Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   ООП - С++ или javascript? (https://javascript.ru/forum/misc/38457-oop-s-ili-javascript.html)

Станислав89 02.06.2013 21:07

ООП - С++ или javascript?
 
Всем привет. У меня сейчас задача решить в какой области программирования мне бы лучше работать. Начал я около одного 1 года назад. И почему-то взялся за веб-индустрию. За это время я пока научился 2-ум вариантам вёрстки.
Сейчас я решил освоить программирование. ООП мне знакомо по языку Javascript. Но вот сам Javascript мне не нравится. ООП - это круто. Но слишком много надо заучивать...
Есть что-нибудь попроще, где не надо много заучивать наизусть.

Aetae 02.06.2013 21:17

Заучивать надо матан, в программировании в принципе ничего заучивать специально и не надо - надо понимать. Основные вещи при работе запоминаются сами по себе, да так как никакая зубрёжка не сможет, а для остального есть справочники.

Станислав89 02.06.2013 21:21

Aetae,
Спасибо за ответ.

Станислав89 02.06.2013 21:28

У меня такой вопрос есть. Я понимаю, что все разными темпами обучаются. Но всё таки сколько примерно времени требуется для овладения Javascript, с возможностью реализовать хотя бы 80% от предельных возможностей данного языка.

BallsShaped 02.06.2013 21:28

Станислав89, толсто и уныло!
Цитата:

Сообщение от Станислав89
ООП мне знакомо по языку Javascript

Javascript не пишут ОО-программы. Только процедурный стиль! Только хардкор!!!

Станислав89 02.06.2013 21:29

BallsShaped,
Следовательно ООП легче изучить в С++?

BallsShaped 02.06.2013 21:34

Конечно, нет! Нужно написать на js функцию Class.

Станислав89 02.06.2013 21:37

BallsShaped,
Но нет, так нет. Хотя мне мой друг-программист говорил, что ООП не изучить на Javascript. Про функцию Class я не понял.

Станислав89 02.06.2013 21:39

Ещё я понял JavaScript, по учебнику на этом сайте никак нельзя выучить поправьте меня, если ошибаюсь.

BallsShaped 02.06.2013 21:40

ООП, как и js, нельзя изучить. Их можно только понять. А когда ты понимаешь ООП и js, то понимаешь, что это несовместимые вещи)

Aetae 02.06.2013 21:41

Станислав89, не обращай внимания - это трололо.

Станислав89 02.06.2013 21:42

BallsShaped,
Мне так же писал, мой кореш. Так за что лучше взяться за С++ или Javascript?
Будьте любезны, ответьте на моё предыдущее сообщение, если вы читали учебник на этом сайте.

Aetae 02.06.2013 21:44

Это разные вещи для разных задач. Javascipt это веб(процент остального слишком мал). C++ - всё остальное.)

Станислав89 02.06.2013 21:47

Aetae,
Да это я знаю. Я сижу за учебником, который на этом сайте. В течении полугода периодами изучаю. Но самого программирования нет.
Не подскажите бесплатный источник информации, где бы было именно программирование.

BallsShaped 02.06.2013 21:51

Цитата:

Сообщение от Станислав89
Так за что лучше взяться за С++ или Javascript?

Если цель - ООП, то за C++ конечно.
А учебник на сайте отличный, по нему реально научиться. Но не ООП. Потому что это невозможно. Потому что js - не ОО-язык. Хотя можно научиться наследовать классы!

Станислав89 02.06.2013 22:01

BallsShaped,
Спасибо за информацию.

Я ещё хотел спросить у вас. Может мне тут подскажут. Я научился за пол года с этим учебником делать простенькие скрипты, с prompt, confirm, туда же alert, на этих BOM объектах научился только ставить пароль и защиту на страничку по средствам логических вычислений. ха-ха-ха. Но вы догадались, что я имею виду.
Изучил раздел CSS для Javascript. Изучил раздел DOM. Изучил события. Ну и кончено выучил синтаксис. Но программирования у меня до сих пор нет и не предвидится. Что я делаю ни так?:(

BallsShaped 02.06.2013 22:11

Цитата:

Сообщение от Станислав89
Но программирования у меня до сих пор нет и не предвидится.

О чем вообще речь?! Что должно случиться, чтобы у тебя появилось программирование? Каковы ожидания?

Станислав89 02.06.2013 22:18

BallsShaped,
Может и есть там окольные пути через этот учебник к заветному программированию на Javascript
Хотя есть ещё раздел который я не посмотрел - продвинутое программирование на Javascript.
Кто-нибудь по учебнику, как единственному источнику информации смог создать по урокам хотя бы скриншоу? - Вопрос серьёзный.

BallsShaped 02.06.2013 22:25

Цитата:

Сообщение от Станислав89
Кто-нибудь по учебнику, как единственному источнику информации смог создать по урокам хотя бы скриншоу? - Вопрос серьёзный.

Я смог. И я серьзно. Я изучил js только по учебнику на этом сайте. До этого программирование совсем не знал.

Станислав89 02.06.2013 22:33

BallsShaped,
Понятно и поздравляю.

Aetae 02.06.2013 23:03

Цитата:

Сообщение от КО
Что бы появилось программирование - надо программировать.

Когда я начинал - я не читал никаких учебников, а делал исключительно мне интересную задачу. Гуглил решения конкретных вопросов, если находил - применял, не находил гуглил обобщённо и компилировал и из имеющегося используя исключительно логику. Никогда не задавал никому вопросов, только гуглил гуглил гуглил... В итоге я получил работающую программу, но код я никому никогда не покажу.=)
Это далеко не самый эффективный и уж точно не самый быстрый способ научиться программировать, но так, разбирая чужой код, адаптируя под свою задачу я погрузился в этот мир.)
А уже потом было чтение учебников, статей итд.

В общем придумайте себе задачу, причём желательно не с потолка, а которая вас действительно интересует и начинайте программировать. Главно добиться того чтоб работало, любой ценой. Как только получите результат - посмотрите код и переписывайте заново с полученными за это время знаниями(а переписать вам захочется :) ).

Начинать с умных абстрактных книжек про алгоритмы, архитектуры итд рекомендуется только в условиях вузовского обучения. При самостоятельном всё это дело без практики быстро вылетит из головы.

oneguy 02.06.2013 23:03

Цитата:

Сообщение от BallsShaped (Сообщение 254151)
Потому что js - не ОО-язык. Хотя можно научиться наследовать классы!

Это почему? Как раз JS - объектно ориентированный язык, так же как и С++, но эти языки используют разные модели ООП: модель C++ основана на классах, а модель JS - на прототипах.

BallsShaped 02.06.2013 23:18

Цитата:

Сообщение от oneguy
JS - объектно ориентированный язык, так же как и С++, но эти языки используют разные модели ООП: модель C++ основана на классах, а модель JS - на прототипах.

О, да! Старая добрая шаблонная фраза. Прототипное наследование - это наследование. Наследование != ООП. Наследование - это одна из составляющих ОО-подхода в разработке. Javascript - язык объектный, но не объектно-ориентированный. Хотя на js можно писать ОО-программы, не хватает только модульности, которая вот-вот подтянется)

nerv_ 02.06.2013 23:59

Цитата:

Сообщение от Станислав89
У меня сейчас задача решить в какой области программирования мне бы лучше работать

Цитата:

Сообщение от Станислав89
За это время я пока научился 2-ум вариантам вёрстки

теперь осталось научиться программировать на c++ :D

Цитата:

Сообщение от Станислав89
У меня сейчас задача решить в какой области программирования мне бы лучше работать

Цитата:

Сообщение от Станислав89
Но вот сам Javascript мне не нравится

Цитата:

Сообщение от Станислав89
ООП мне знакомо по языку Javascript.

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

Цитата:

Сообщение от oneguy
Это почему? Как раз JS - объектно ориентированный язык, так же как и С++, но эти языки используют разные модели ООП: модель C++ основана на классах, а модель JS - на прототипах.

приятно видеть людей с глубоким пониманием )

Dim@ 03.06.2013 11:05

Цитата:

Сообщение от Станислав89
ООП мне знакомо по языку Javascript. Но вот сам Javascript мне не нравится. ООП - это круто. Но слишком много надо заучивать...

:blink: Если тебе не нравиться язык на котором ты пишешь (или не пишешь), то писать на нём не надо, тем более ради одного ООП, споры о котором растут как грибы после летнего дождя, в споры эти лучше не лезть (всё равно там никого не переубедишь), вообще бесспорно лучше знать и С, и С++, и JS, и т.д.
Идти работать надо идти туда куда интересней и где сам развиваешься, а не спрашивать в интернетах "А куда мне пойти ребят?", сам думай и сам выбирай

melky 03.06.2013 16:39

Я бы порекомендовал заняться для начала Java или C# - там вроде не такой синтаксис страшный (субъективно)

Ну или за хаскель :) уважаю эту вещь

А вообще программу на Java, как говорят, можно бесконечно рефакторить... т.е. я хочу сказать, что этот простой язык идеально подходит для обучения шаблонам и абстрактным вещам вообще - тем самым, которые не приколочены к конкретному языку программирования

Цитата:

Сообщение от BallsShaped (Сообщение 254136)
Javascript не пишут ОО-программы. Только процедурный стиль! Только хардкор!!!

и функциональный стиль, лол. javascript мультипарадигменная вещь.

можно даже полноценное ооп из плюсов \ явы прикрутить, если атмосфера прототипов припекает.

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

...

мдя

Цитата:

Сообщение от BallsShaped (Сообщение 254169)
Наследование != ООП

Цитата:

Сообщение от BallsShaped (Сообщение 254169)
О, да! Старая добрая шаблонная фраза.

:)

Цитата:

Сообщение от BallsShaped (Сообщение 254151)
Если цель - ООП, то за C++ конечно.
А учебник на сайте отличный, по нему реально научиться. Но не ООП. Потому что это невозможно. Потому что js - не ОО-язык. Хотя можно научиться наследовать классы!

а по-помоему, плюсы дольше учить будет, перед тем как за шаблоны возьмёшься и вообще как за проектирование в общем

Цитата:

Сообщение от Aetae
Никогда не задавал никому вопросов, только гуглил гуглил гуглил... В итоге я получил работающую программу, но код я никому никогда не покажу.=)

злодей :) а я по глупости вываливаю на гитхаб... за один проект научился всему, что знаю.

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

melky 03.06.2013 17:06

Цитата:

Сообщение от nasqad (Сообщение 254271)
О боже советовать жаву человеку который год учил верстку и за полгода научился простеньким алетрам.
Я жаву полтора дня пытал пытал так и не смог сделать таск менеджер, учебников нормальных нет, одни хендбуки, мвц интуитивными методами не построить, чужой код не читабельный :( моя печаль

хм. бывший одноклассник учится в ВУЗе в Саратове и пишет там на Java. кидал как-то код, даже я его понимал (хотя никогда сам на ней не писал)

kobezzza 03.06.2013 18:44

У меня братишка на Java лабает, хороший и выразительный язык, а в плане отсутствия литературы по Java - это бред, одних изданий O`Realy over9000.

Gozar 03.06.2013 19:55

BallsShaped,
В js слишком много свободы. Некоторых это пугает.

kobezzza 04.06.2013 00:10

Цитата:

Сообщение от nasqad (Сообщение 254313)
Ну это же был тонкий намек чтоб мне наконец посоветовали литературы.
Десяток великих книг которые советуют на линукс.орг/хабре/везде - это хендбуки вроде thinking in java. Аналоги страуструпа. Которые не обьясняют архитектуру а только долбят по деталям.
А книг которые на простых примерах показывают как надо делать класс вьюшки для fx-приложения и как ему взаимодействовать с контроллером - не нашел.
Ошибки компилятора непонятные и найти в чем дело можно только перебором.
Книги орейли про энтерпрайзы или другие вещи уровня повыше "первый день в ооп"

Как вариант хедфёст "изучаем Java", брат начинал с неё.
http://rutracker.org/forum/viewtopic.php?t=4212262

nerv_ 04.06.2013 00:41

Цитата:

Сообщение от nasqad
это хендбуки вроде thinking in java. Аналоги страуструпа

без комментариев: страус_труп :)

oneguy 04.06.2013 14:41

Цитата:

Сообщение от BallsShaped (Сообщение 254169)
Javascript - язык объектный, но не объектно-ориентированный.

Чем отличаются эти понятия?

bes 04.06.2013 23:31

Цитата:

Сообщение от BallsShaped
не хватает только модульности

что ты понимаешь под отсутствием модульности
http://ru.wikipedia.org/wiki/%D0%9C%...D%D0%B8%D0%B5)
например, подключая различные jquery-плагины, не её ли ты реализуешь


Часовой пояс GMT +3, время: 11:01.