Ух ты, много вопросов ты задаешь. Позвольте мне попытаться обратиться к ним ...
Почему все добрые имена имеют свои
обрабатывать с C и использовать Python для
скрипт? Разве Python не достаточно хорош, чтобы
использоваться для бэкэнд-процесса?
Я не уверен, что вы имеете в виду. Python часто используется в серверной работе; если и когда какая-то часть оказывается узким местом ЦП, извлечение стабильного ядра и использование для него кода C (или C ++, или Fortran и т. д. - все они хорошо взаимодействуют с Python) - разумный первый шаг при оптимизации ( Cython также часто является выполнимой альтернативой) - точно так же, как в «последнем» варианте, можно углубиться в специфичный для платформы язык ассемблера, чтобы извлечь еще большую производительность (GMP, основная библиотека, которую я обертываю в gmpy , делает это при наличии гарантии - действительно хорошие сборочные детали на самом деле специфичны для конкретных моделей процессоров, даже не для «платформ»). Почему вы думаете (например), что наличие специфичной для CoreDuo сборки для полной оптимизации ЦП означает, что общая сборка x86 "недостаточно хороша", или наличие общей сборки означает, что C "недостаточно хорошо" и т. Д., И так далее? В (редких, но не неслыханных) случаях, когда сжатие каждого цикла ЦП действительно важно, для той крошечной части кода, для которой это важно , снижение уровня абстракции является отличной стратегией, и в ни в коем случае не подразумевается, что верхний уровень абстракции "недостаточно хорош".
Кстати, именно поэтому я поставил «последний» в кавычках - потому что, когда даже самая конкретная сборка все еще требует большей оптимизации, можно (для некоторых процессоров) перейти к микрокоду, или ПЛИС, или полностью настраиваемым ИС. Конечно, это решительно не означает, что программные решения не являются (чтобы использовать правильный глагол один раз ;-) достаточно хороши (для оставшихся 99,999% ваших потребностей): это означает настоящие инженеры понимают компромиссы в производительности ...! -)
Если это
это хорошая практика держать
путь дизайна, то почему мы не видели
какая-нибудь хорошая книга по этому вопросу еще? Или мы
иметь? Я должен держать это в плане, так что если
у вас есть хорошие материалы для чтения, пожалуйста
упомяните здесь.
Какой предмет (ы) вы думаете о том, что сами по себе стоят целую книгу? Я не думаю, что существует большой потенциальный рынок для книги о (скажем) том, как и когда выбирать части Python для перекодирования в C, части C для перекодирования в универсальной сборке для выбранной вами платформы (ей), части универсальной сборки перекодировать в сборку для конкретной модели процессора и т. д. вплоть до микрокода, FPGA, пользовательских микросхем - это моя мотивация, чтобы не посвятить (скажем) год моей жизни написанию такой книги. Я думаю, что Nutshell делает достойную работу, обрисовывая в общих чертах самые основы - как вы используете профилирование для выбора частей, которые являются нагрузками на процессор (если таковые имеются), оптимизации их на уровне Python и перекодирования на языках более низкого уровня, если это необходимо (без упоминания Cython - еще не было, когда я в последний раз переписывал Nutshell). Но, конечно, эта часть книги составляет 10% или меньше.
Я собираюсь планировать более широкую сферу
учусь. Целью было изучить
язык теперь оказывается
синтез на платформе с открытым исходным кодом.
У меня рабочий стол DELL OPTIPLEX, на котором
Я думаю, чтобы настроить с открытым исходным кодом
среда с UNIX, VIM, PYTHON.
Есть много гуру с открытым исходным кодом
работая над большим открытым исходным кодом
вещи. Я видел сэра Алекса Мартелли
здесь на стеке потока Мне бы хотелось, чтобы я мог
получить что-то от него о том, как я должен
проектирование разработки с открытым исходным кодом
среда? Но есть много других
герой и мне также нравится их опыт
на этом.
Трудно побить Ubuntu (хотя я лично использую в основном Mac, это потому, что Mac OS X по-прежнему предлагает превосходные возможности для ноутбуков, и мои персональные компьютеры в настоящее время в основном ноутбуки - моя рабочая станция на работе работает с Ubuntu) хотя я почти уверен, что другие современные дистрибутивы Linux были бы вместе. Моя личная причуда: код, который я считаю критически важным для моей работы (с открытым исходным кодом), я всегда стараюсь пересоздать с нуля исходники - Python, множество расширений Python, GMP, svn, hg, Cython ... Я допускаю эти дни я делаю исключение для самой ОС, gcc suite, X11 и друзей, gvim - нужно нарисовать линию некоторые , где можно получить любые свободные циклы, чтобы получить некоторые полезная работа выполнена; -).
Они изучают концепцию обучения
стать хорошим разработчиком с открытым исходным кодом
(Unix, Python с C). Для этого мне нужно
как настроить разработку
среда? Какие великие
разработка open source разработка
среда? Пожалуйста, сохраните ответ
в контексте с Python.
Не думаю, что в этом есть что-то особенное.
Некоторые люди клянутся IDE (например, с помощью PyQt - или Eclipse plus pydev); я придерживаюсь gvim (и хотя иногда я использую iPython, я все еще использую обычный python). Аналогично для VCS, таких как svn и hg, или для таких баз данных, как PostgreSQL и т. Д., Существует множество графических интерфейсов, но я считаю, что инструменты командной строки больше подходят для моих личных предпочтений.
В основном, я рекомендую выбрать проект в области, которую вы хорошо знаете (например, веб-приложения, в вашем случае), изучить и использовать ее достаточно, чтобы сформировать поддерживаемое мнение, и как только вы определите вещи, которые отсутствуют (или откройте ошибки на своем трекере и т. д.), погрузитесь и начните вносить свой вклад. Если и когда вы сделаете хорошую работу в этом, вы в конечном итоге будете приняты в качестве коммиттера проекта.
Ключ - это то, что вам действительно нужно, лично , о котором вы заботитесь - работаете ли вы с Ubuntu или Gentoo, или с Gvim, или с Emacs, или с Эриком и т. Д. очень незначительное соображение ИМНШО.