Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Разное

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Изучаем ООП
 
 автор: neadekvat   (14.06.2010 в 17:59)   письмо автору
 
 

Уже достаточно давно начал изучать ООП в php. Но теория метрва без практики - а применение ООП мне не понадобилось еще ни разу - зачем все усложнять, если процедурным подходом можно сделать?
Однако меня не радует перспектива так и сидеть на одном php со своим процедурным подходом. Пусть я не буду использовать ООП, но знать его и уметь применять должен.
И потому задаю вопрос, какой бы вы посоветовали язык программирования для изучения ООП? То есть, очевидно, такой, где все построенно на ООП.

P.S. Желательно не Си++ ибо рано еще, я думаю :)

  Ответить  
 
 автор: Тень*   (14.06.2010 в 18:49)   письмо автору
 
   для: neadekvat   (14.06.2010 в 17:59)
 

Касательно ООП в PHP: попробуй изучить какой-нибудь фреймворк типа Kohana, ZF, CodeIgniter etc. Мне вот Kohana очень понравился. Скорость написания приложения очень возрастает, неоднократно используемого кода становится больше. Плюсы, короче, налицо.

  Ответить  
 
 автор: neadekvat   (14.06.2010 в 19:07)   письмо автору
 
   для: Тень*   (14.06.2010 в 18:49)
 

Я, правда, думал изучать фреймворки уже зная ООП, но изучать ООП на основе фреймворков будет, конечно, выгоднее с точки зрения практического применения)

  Ответить  
 
 автор: dios™   (14.06.2010 в 19:38)   письмо автору
 
   для: neadekvat   (14.06.2010 в 19:07)
 

применяя фреймворки без понимания концепции ООП и его знания будет сравнимо тому, как научить медведя складывать числа - механические действия без понимания концепции.
По поводу Си++ хочу добавить, что изучение ООП я бы начал именно с него, ибо на развитие РНР Си++ повлиял не мало

  Ответить  
 
 автор: psychomc   (14.06.2010 в 20:11)   письмо автору
 
   для: neadekvat   (14.06.2010 в 17:59)
 

>То есть, очевидно, такой, где все построенно на ООП.

Java (по крайней мере так все говорят :) )

p.s если знаете хотя бы что такое инкапсуляция, наследование и полиморфизм, неужели нельзя определиться нужно это самое ооп или нет? ))

  Ответить  
 
 автор: neadekvat   (14.06.2010 в 23:03)   письмо автору
 
   для: psychomc   (14.06.2010 в 20:11)
 

Вот я и определяю, что не нужно)
Вы лично много раз использовали ОО подход при создании сайтов? Как вы определяли, что для этого проекта ОО подход применим, а для того - нет?

  Ответить  
 
 автор: psychomc   (15.06.2010 в 00:13)   письмо автору
 
   для: neadekvat   (14.06.2010 в 23:03)
 

ни разу. использовал ооп только для написания фреймворка

  Ответить  
 
 автор: neadekvat   (15.06.2010 в 00:57)   письмо автору
 
   для: psychomc   (15.06.2010 в 00:13)
 

Вот видите.
Очень много спорят по поводу того, уместно ли ООП в веб-программировании.
И потому хотелось бы начать практически применять на том, где этот вопрос не возникает по определению языка программирования :)

  Ответить  
 
 автор: dios™   (15.06.2010 в 01:16)   письмо автору
 
   для: neadekvat   (15.06.2010 в 00:57)
 

При достаточно больших проектах код становится более читабельным и разбираться в нем становится куда удобнее(если по уму сделано), чем в макаронах из функций.
Для хелло ворлдов и маленьких скриптов для себя конечно это не нужно.

П.С. прежде чем спорить по поводу того, уместно ли ООП в веб-программировании настоятельно рекомендую разобраться вообще с тем, что такое ООП и для чего его использовать. И ИМХО лучше знакомиться в ООП ни в веб-среде...

  Ответить  
 
 автор: neadekvat   (15.06.2010 в 01:22)   письмо автору
 
   для: dios™   (15.06.2010 в 01:16)
 

Такое чувство, что оба своих поста в этой теме вы написали, либо не прочитал, что я написал, либо поняв с точностью до наоборот.
Я знаю теорию, мне интересна практика. Но не я спорю о месте ООП в веб-программировании.

Относительно языка программирования - решил посмотреть в сторону delphi

  Ответить  
 
 автор: Commander   (15.06.2010 в 09:31)   письмо автору
 
   для: neadekvat   (15.06.2010 в 01:22)
 

Относительно языка программирования - решил посмотреть в сторону delphi

Правильно делаете. Что бы не орали придурки по поводу кривости ООП в Delphi - там эта парадигма использована (не реализована, а именно использована) лучше всего. Если знаете теорию - освоить будет проще простого. Если потребуется помощь по самому Delphi - пишите, чем смогу - помогу. Правда, я давно Delphi не запускал

  Ответить  
 
 автор: neadekvat   (15.06.2010 в 11:05)   письмо автору
 
   для: Commander   (15.06.2010 в 09:31)
 

Спасибо за предложение в помощи) Однако логичнее было бы найти форум, подобный этому, тем более в той же википедии есть ссылки на крупнные сообщества программистов delphi

  Ответить  
 
 автор: Commander   (15.06.2010 в 14:23)   письмо автору
 
   для: neadekvat   (15.06.2010 в 11:05)
 

Посмотрите в сторону DelphiWorld (он на народ.ру). Также есть неплохой проект Олега Калашникова - детище его рассылки по асму - http://rusfaq.ru/ Правда, не знаю, насколько он сейчас неплохой, пару лет туда не заходил. Он вроде бы коммерциализироваться начинал.

  Ответить  
 
 автор: neadekvat   (15.06.2010 в 14:26)   письмо автору
 
   для: Commander   (15.06.2010 в 14:23)
 

За первый совет спасибо)
Сайт Калашникова..у меня там "дней на портале: 1442", но повводили платных систем, не айс там стало находится :(

  Ответить  
 
 автор: Commander   (15.06.2010 в 16:40)   письмо автору
 
   для: neadekvat   (15.06.2010 в 14:26)
 

За первый совет спасибо)
Сайт Калашникова..у меня там "дней на портале: 1442", но повводили платных систем, не айс там стало находится :(


Точно. Я калаша в баню (выражения были покруче) послал, едва увидел СМС биллинг на первой странице.

Если непонятно почему - почитайте его рассылку по асму - поймете. Так что первую ссылку поместил определенно зря. Впрочем, если есть желание кучу денег потратить на решение текущих вопросов...

P.S. Пока мое сообщение RFPro.ru не удалили - посмотрим, может стоит ругани портальчик

P.P.S. Только что впомнил - есть еще неплохой проект http://delphikingdom.com Только не знаю, существует он или нет - с яндкса ссылка уже минут пять открывается - инет дрянной

  Ответить  
 
 автор: psychomc   (15.06.2010 в 13:15)   письмо автору
 
   для: Commander   (15.06.2010 в 09:31)
 

>Правильно делаете. Что бы не орали придурки по поводу кривости ООП в Delphi - там эта парадигма использована (не реализована, а именно использована) лучше всего. Если знаете теорию - освоить будет проще простого. Если потребуется помощь по самому Delphi - пишите, чем смогу - помогу. Правда, я давно Delphi не запускал

а я вот знаю немало непридурков, которые после нормальной среды и языка пробовали писать на делфи и плювались от кривости ооп в нем

  Ответить  
 
 автор: Commander   (15.06.2010 в 14:14)   письмо автору
 
   для: psychomc   (15.06.2010 в 13:15)
 

Я почему и говорю, что использована, что ООП в Делфи криво реализовано. Именно реализовано, а не использовано. Я имею в виду библиотеку VCL.

Покажите мне еще набор классов, который так удачно позволял бы упростить разработку приложений под Windows.

P.S. Вы пишете плЮвались, а не плЕвались :). Второй вариант правильный. Это не делает меня специалистом по русскому языку, Я, посмотрев на MFC, не мог понять, для чего ЭТО написано. Впрочем, понять нетрудно, сейчас соображаю. Но ООП само по себе и реализация ООП - это, как говорит мой небезизвестный тезка, две большие разницы.

  Ответить  
 
 автор: Tonik992   (15.06.2010 в 02:50)   письмо автору
 
   для: neadekvat   (15.06.2010 в 00:57)
 

Ты знаешь суть ООП, зачем он вообще нужен??. Знание этой вещи избавит тебя от твоих мук :)

Я раньше на php использовал лишь процедурную структуру... После глубокого изучения ООП полностью перешел на классы, т.е. на сам ООП

  Ответить  
 
 автор: Commander   (15.06.2010 в 09:32)   письмо автору
 
   для: Tonik992   (15.06.2010 в 02:50)
 

del

  Ответить  
 
 автор: neadekvat   (15.06.2010 в 11:03)   письмо автору
 
   для: Tonik992   (15.06.2010 в 02:50)
 

Благодарю! Вы мне безумно помогли в решении вопроса!

  Ответить  
 
 автор: psychomc   (15.06.2010 в 13:12)   письмо автору
 
   для: neadekvat   (15.06.2010 в 00:57)
 

как мне показалось, если большой проект, есть время и позволяет бюджет, то вполне уместно

  Ответить  
 
 автор: бред   (15.06.2010 в 23:12)
 
   для: neadekvat   (14.06.2010 в 17:59)
 

Начинал разбираться в ООП как раз с PHP. Причём основная мотивация была не в практическом применении, а именно чтобы не чувствовать себя отсталым, т.к. совершенно не было понимания самой сути. На PHP дошло только до зазубривания синтаксиса, но не более. Потом был вынужден учить C++. На примере виртуальных методов впервые ощутил практическую пользу от наследования, для меня уже это было верхом гениальности. Ничего полезно-масштабного тогда не писал, было просто лень, т.к. это была ВУЗовская обязаловка.
Далее Java... язык, который позволил не зацикливаться на низкоуровневых деталях, а просто программировать и познавать. Здесь окончательно сформировалось логичное представление об идеях использования ООП.
Следующая жертва C#. Практикой на .Net закрепил всё что узнал с помощью Java. Много интересных приёмов подсмотрел в самом фреймворке.
И только после навел порядок знаниях об ООП в PHP.

Кстати, ещё во время изущения C++ читал отзывы в интернете, что ООП в этом языке монструозен, безобразен и неудобен в сравнении с другими ОО-языками. Тогда такое казалось даже обидным. После Java и C# могу сказать, что и сам синтаксис этих языков выглядит "мягче" и дружелюбней чем C++, и ООП в них сделан более высокоуровнево, без детальностей и запутывающих излишеств. 50% "монструозности" в С++ - это обязанность контроля за выделением/высвобождением памяти, но если разобраться и строго следовать правилам, то проблем быть не должно (должно быть меньше); в C# и Java высвобождение памяти на совести сборщика мусора, поэтому там в этом плане всё проще. Другие 50% безобразий C++ - это костыли, встроенные в язык, для обхода собственных ограничений (наподобие const_cast, классов-друзей и т.п.).

Поэтому если нужно понимание деталей, то посоветую вникать в C++, что к чему, зачем и почему. Если нужна просто практика в ООП, то Java или C#. Эти языки как раз из разряда "где все построенно на ООП". Лично мне ближе C#, после него вспоминать о C++ даже не хочется, да и нет такой необходимости.

Если будет нужна помощь по любому из этих 3ёх языков, оставляйте контакт.

  Ответить  
 
 автор: neadekvat   (15.06.2010 в 23:20)   письмо автору
 
   для: бред   (15.06.2010 в 23:12)
 

Такой выбор, аж глаза разбегаются))
Благодарю за предложение о помощи, но стараюсь не набирать программистов в аське - слишком большой соблазн по любой проблеме мучать их :)

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования