Найти - Пользователи
Полная версия: С чего начать ?
Начало » Python для новичков » С чего начать ?
1 2 3 4 5
PooH
balu
PooH
Ого! Можно проиллюстрировать?
Что именно проиллюстрировать? Пример DSL как такового? Или кусок реализации собственного DSL? Или примеры практического применения математической лингвистики?
Хм… про DSL то я и забыл!!!
Кстати если можно расскажи как ты их практически используешь. А то вокруг столько шума о них, а у меня как то не находится для него места
balu
Ferroman
XML - один из вариантов организации иерархии
Стандартный, на данный момент. Хотя есть и другие, не менее мощные, как минимум. Но дело не в том. XML - это пример утверждения, как, например, и ГУИ-лабалка в той-же Делфи. И мыслим мы не объектами, а утверждениями (я по крайней мере ;)). Причина же популярности ООП в ГУИ, на мой взгляд, в некотором пересечении его с сущностями агентного моделировния, в котором ООП очень даже в тему.
Ferroman
Насчет завязывания логики на гуи - так это зависит не от среды, а от программиста.
Нет. Инструмент формирует мышление. Я очень долго мозги вычищал от дельфячьих привычек. Не забывай, что говорил Дийкстра о болезных, которые слишком много программировали на бейсике. Да и потом, если отменить “технологию буттон1клик” Делфи стает совсем уже не RAD, хотя она никогда ею и не была.
Ferroman, вы не читали книгу Эрика Реймонда “Искусство программирования для UNIX”? Там все эти, и многие другие, темы, разжованы намного лучше, чем попытался объяснить здесь я. Русский скан бродит по сети, но в открытом доступе английская версия. Это моя самая ценная покупка за 2006 год.
Ferroman
мне не понятно чего вы так “завелись”.
Это уже личное - как я уже писал, слишком долго я вычищал мозги от наследия делфи.
balu
PooH
Кстати если можно расскажи как ты их практически используешь.
Например, DSL, который описывает правила построения гуйни к базам данных. Причем самое сложное - это написать SQL запрос и описать поля. Далее прога сама строит гуйню, включая все необходимые диалоги, генерирует нужные SQL-запросы. Если есть связь master-detail (справочники, другими словами) - для них все тоже самое тоже строится автоматом. Работает все под Windows и Linux, причем для применения большинства изменений из клиента даже не надо выходить ;) Выглядит это, в итоге, так - http://img468.imageshack.us/img468/6769/kaabh0.png .
Движок всего этого я написал за 2-3 месяца свободного от работы рабочего времени на Python+Tk. Бизнес логика либо вынесена в СУБД (большей частью), либо через API можно делать и на питоне. Также через API реализована возможность задания произвольных форм, которые отображаются во вкладках.
Второй пример - программы, которые пишут программы. У меня это программы, которые пишут программы для станков с ЧПУ, которые по сути теже DSL. С DSL-ми, на самом деле ты, скорее всего, стыкался, хотя не отдавал себе отчета, что это DSL. Например, это все ГУИ-лабалки.
Вот тебе еще пример применения математики - синтаксический анализ.
Небольшой пример того, о чем я писал, на моем блоге - http://mkazarian.blogspot.com/2008/01/emacs-pythonide-2.html Здесь и простенький синтаксический анализ, и простенькое взаимодействие двух разных программ, и отделение ГУИ от кода, хотя результат выводиться на ГУИ, и, наконец, полное отстуствие ООП (точнее собственных классов). Правда питон-часть там не моя, но здорово мной модифицированная чужая.
Ferroman
balu
И мыслим мы не объектами, а утверждениями (я по крайней мере ;)).
А я и не говрил о том что мыслю объектами. Я работаю с сущностями. Есть разница.
balu
Причина же популярности ООП в ГУИ, на мой взгляд, в некотором пересечении его с сущностями агентного моделировния, в котором ООП очень даже в тему.
Может быть. А больше поработаю с другими способами организации GUI, тогда и составлю окончательное мнение.
balu
Нет. Инструмент формирует мышление. Я очень долго мозги вычищал от дельфячьих привычек. Не забывай, что говорил Дийкстра о болезных, которые слишком много программировали на бейсике.
Придерживаюсь несколько другого мнения. Но на вкус и цвет….
balu
Ferroman, вы не читали книгу Эрика Реймонда “Искусство программирования для UNIX”? Там все эти, и многие другие, темы, разжованы намного лучше, чем попытался объяснить здесь я. Русский скан бродит по сети, но в открытом доступе английская версия. Это моя самая ценная покупка за 2006 год.
Нет, не читал, но обязательно почитаю.
balu
Это уже личное - как я уже писал, слишком долго я вычищал мозги от наследия делфи.
хе “у маньяка было тяжолое детство…”(с)
Шутю конечно.
Desperado27
Ferroman
Не станут, но стоило писать в другом разделе.
Подскажите, плз, в каком. Спасибо.
Ferroman
Единственный совет - учите ООП. Не можете сами - найдите учителя. Но учите, это стоит того.
Наверно, вы прав, учить надо, только в 41 год это намного сложнее… Плюс, абсолютно не представляю свое будущее как программиста-в этом возрасте уже вроде “с рынка идут, а не на рынок”? …
Сам не можу-поэму проще написать, чем разобраться(для мна).
Учителя найти-не за что…
А самое сложное для мня-понять: зачем это все нужно, и почему Керниган и Риччи обходились без ООП, еще масса программистов-тоже, а сейчас без него-никуда?
А Tkl…тикль…тоже весь ООПизирован?Может, С+Тикль = можно обойтись без ООП?
Знаю, что туплю-извините.
Ferroman
Desperado27
Подскажите, плз, в каком. Спасибо.
Да и этот подойдёт. Но я бы писал в флейме.
Desperado27
Наверно, вы прав, учить надо, только в 41 год это намного сложнее… Плюс, абсолютно не представляю свое будущее как программиста-в этом возрасте уже вроде “с рынка идут, а не на рынок”? …
Возраст абсолютно не при чём. С возрастом только умнеют :)
Desperado27
Сам не можу-поэму проще написать, чем разобраться(для мна).
На самом деле так многим кажется. Но это не так.
Desperado27
Учителя найти-не за что…
Да при чем тут деньги? Хороший человек вам ооп и без денег объяснит. Поверьте, это не так сложно как кажется. Да поначалу непривычно, да и использовать всю силу ООП вы будете намного позже, но неплохо понимать и писать не очень мудрёный код вполне сможете. Да и это уже детали - главное понять сам подход.
Desperado27
А самое сложное для мня-понять: зачем это все нужно, и почему Керниган и Риччи обходились без ООП, еще масса программистов-тоже, а сейчас без него-никуда?
Тот же вопрос мучал и меня :)
На самом деле он нужен для того чтобы было проще, гибче и понятнее :) Используя ООП можно значительно улучшить понимание, гибкость и простоту программы. Конечно - для подходящих задач. Многие задачи неплохо без него обходятся.
Да и кооперировать работу многих программистов легче используя ООП.
Desperado27
А Tkl…тикль…тоже весь ООПизирован?Может, С+Тикль = можно обойтись без ООП?
Знаю, что туплю-извините.
Честно говоря не знаю. Тут более знающие коллеги подскажут.
Андрей Светлов
Дельфи - зло, присоединяюсь. Хоть сам начинал с С++, но дельфийский код видеть и править приходилось часто.
Подкупая первоначальной простотой, навязываемый подход в дальнейшем быстро приводит к размытию бизнес-логики и отвратительному дизайну. Конечно, можно и на дельфи писать хорошо. Но к его RAD средствам это не имеет почти никакого отношения, а недостатки поддержки языком ООП сильно утомляют.

Противопоставление декларативного подхода объектно-ориентированному считаю несколько эээ… неадекватным. Как и противопоставление интерпретатора компилятору. Каждому - свое, и одно с другим прекрасно сочетается, удачно дополняя.
Ferroman
2 Desperado27
Я решил немного помочь вам в освоении ООП - написал маленькую статью иллюстрирующую небольшой пример с ООП, и без него.
Если есть вопросы - смело задавайте, с удовольствием отвечу.
Ссылка - ООП как способ сделать мир понятнее. Часть 1.
Заодно народ попинает :)
balu
Ferroman
Честно говоря не знаю. Тут более знающие коллеги подскажут.
Чистый Тикль не ООП. Хотя есть ООП-примочки.
Desperado27, есть очень мощные ЯП, где ООП не пахнет. Посмотрите на Haskell или Scheme (хорошо описан в SICP, ссылка на русский вариант есть на форуме). Есть мультипарадигменные ЯП Ocaml/F# (с которых маленькая кокнторка микрософт преццо немеряно), CommonLisp - неплохая книжка тут - http://pcl.catap.ru/doku.php (если будете читать 4-ю главу сообщите мне о неясностях/ошибках перевода) Что касается ООП, то его хорошо разжовывают в книгах по Java или C#. Например К. Хорстманн “Java 2”, я скан в сети видел.
Андрей Светлов
Противопоставление декларативного подхода объектно-ориентированному считаю несколько эээ… неадекватным.
Если у меня получилось противопоставление … чесно говоря не было даже в мыслях эти подходы противопоставлять… тем более, что сам ООП использую. Я хотел донести мысль, что ООП применяют не всегда к месту с организацией работы ГУИ, как пример.
ZIP
я последнее време стал часто слышать об питоне. и очень заинтересовался им. поставил, откомпилил пару прстых исходников взятых из книжек. но я так и непонял пока, можн оли его откомпилирывать как exe'шеник? или как тогда запускать програмы на компах где не устанволден питон. где вобще этот язык используется? вижу что сравнивают его с PHP, на питоне так же можно писать веб сайты? ели да то каким образом, на сервере должны быть установдены какието програмы? много тупых вопрсоов конечно, но я просто раньше не сталкивался с подобным языком. знаю основы паскаля,делфи,асм,С++,С# немного, примерно предстовляю как PHP работает.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB