Javascript-форум (https://javascript.ru/forum/)
-   Работа (https://javascript.ru/forum/job/)
-   -   СПБ: Требуется мега спец по JavaScript Prototype (вторично - PHP/SQL) (https://javascript.ru/forum/job/5095-spb-trebuetsya-mega-spec-po-javascript-prototype-vtorichno-php-sql.html)

[DiMA] 14.09.2009 22:51

Требуется программист JavaScript (Питер)
 
20 ноября - наша вакансия опять актуальна :)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Требуется профессиональный веб-программист:
- опыт работы с ООП JS фреймворками от 2х лет, желателен опыт с Prototype
- работа веб-программистом от 3х лет, в коллективе
- кроссплатформенные браузерные JS-приложения и верстка
- грамотное юзабили и проектировка интерфейсов.

PHP/SQL тоже нужно знать, хотя бы посредственно.

Возраст: от 23х лет. Прописка в СПб/Ленобласти.

50-60 тыщ (на руки), Питер, пл.Мужества, резюме в кратком текстовом виде отправляйте в личные сообщения + телефон.

Gozar 25.09.2009 19:54

текучка у вас там что ли?

[DiMA] 25.09.2009 22:09

Ответы на все вопросы будут в конце собеседования

[DiMA] 25.09.2009 23:47

+1 к статистике .-)

Gozar 26.09.2009 00:25

Статистику Вы похоже сами придумываете, ну ну.

Kolyaj 27.09.2009 20:56

Цитата:

Сообщение от [DiMA
]Если вы считаете себя настоящим профессионам в плане ООП на JS

А ООП на JS что-то мегасложное?

tenshi 27.09.2009 21:47

логика реализации наследования взрывает трезвый мозг ;-)

Gvozd 27.09.2009 22:08

Цитата:

Сообщение от tenshi
логика реализации наследования взрывает трезвый мозг ;-)

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

tenshi 28.09.2009 01:05

в яваскрипте оно сделано через задницу :-E

Riim 28.09.2009 02:34

tenshi, что именно тебе не нравится, само прототипирование или его реализация в javascript-е?

tenshi 28.09.2009 10:44

реализация, я ж сказал...
:write:

ZoNT 28.09.2009 11:52

Цитата:

Сообщение от [DiMA
]Если вы считаете себя настоящим профессионам в плане ООП на JS и потому хотите для себя исключения

Гы-гы, профессиональному js-проггеру в виде исключения 50-60 тр? :lol:
Спасибо, поржал...

Riim 28.09.2009 19:10

tenshi, что плохо в реализации? Не подумай, что я пытаюсь спорить, просто интересно твое мнение, так как самому мне сравнивать не с чем, Python только собираюсь осваивать.

Gozar 28.09.2009 22:14

реализация как реализация, js - интересный язык и у него как и у всех других языков есть свои особенности.

tenshi 29.09.2009 00:23

в яваскрипте слишком много неконтролируемой магии..
* скрытая ссылка на прототип, которую можно получить только окольными путями, а изменить так вообще нельзя
* нельзя изменить итерируемость полей. вообще существование неитерируемых полей - гемор при рефлексии
* для каждого прототипа требуется функция-посредник, которая свяжет экземпляр с прототипом
афайк, функция+прототип - это самый настоящий класс, только в несколько извращённой форме. истинное прототипное наследование достигается только примесями.
* нельзя задать обработчик сообщения "метод не найден" (а в смалтолке и питоне - можно)

Riim 29.09.2009 02:55

Цитата:

Сообщение от tenshi
которую можно получить только окольными путями

есть же свойство "constructor", примерно так: exemplar.constructor.prototype .

Цитата:

Сообщение от tenshi
а изменить так вообще нельзя

а надо? Получится, что можно создать класс и изменять его родителя (родительский класс). Разве это по OOP-шному? Там вообще если подумать, много разных неправильных вещей можно будет делать.

Цитата:

Сообщение от tenshi
нельзя задать обработчик сообщения "метод не найден" (а в смалтолке и питоне - можно)

мелочь... Или нет?

Цитата:

Сообщение от tenshi
нельзя изменить итерируемость полей. вообще существование неитерируемых полей - гемор при рефлексии

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

upd: вот, кстати, еще мнение: http://krovosos.habrahabr.ru/blog/70314/. Правда, там не только прототипирование, скорее просто сравнительный обзор.

tenshi 29.09.2009 11:04

> есть же свойство "constructor", примерно так: exemplar.constructor.prototype

constructor указывает на конструктор прототипа. иногда конструктор экземпляра и его прототипа совпадают, а иногда - нет:

function HTMLString( ){ }
HTMLString.prototype= new String
alert( ( new HTMLString ).constructor.prototype === HTMLString.prototype )



> Разве это по OOP-шному?

да, ибо это объектно ориентированное программирование, а не классово ориентированное ;-)


> мелочь... Или нет?

нет. основа ооп: объекты обмениваются сообщениями и полностью вольны обрабатывать их так, как захотят. а в яваскрипте отсутствие метода вызывает исключение и пытается уронить всё приложение, что для пользовательского интерфейса не допустимо.

tenshi 29.09.2009 11:45

Цитата:

вот, кстати, еще мнение: http://krovosos.habrahabr.ru/blog/70314/
это высер дилетанта :nono:

e1f 29.09.2009 14:57

Цитата:

Сообщение от tenshi (Сообщение 31206)
это высер дилетанта :nono:

Мда, такое ощущение, что человеку надо было просто обосрать некий скриптовый язык, и под руку попался Ruby. JS для него -- мега круто... А Perl он похоже и в глаза не видел, раз такие заявления.

Riim 29.09.2009 20:15

Цитата:

Сообщение от tenshi
иногда конструктор экземпляра и его прототипа совпадают, а иногда - нет

приходится за этим немного вручную следить, на этапе описания класса. Часто создают обертку, которая сама как надо все делает. В общем, ситуация поправима.

Цитата:

Сообщение от tenshi
это высер дилетанта

Цитата:

Сообщение от e1f
Мда, такое ощущение, что человеку надо было просто обосрать некий скриптовый язык, и под руку попался Ruby. JS для него -- мега круто... А Perl он похоже и в глаза не видел, раз такие заявления.

ладно, вам виднее.

tenshi 29.09.2009 23:02

разумеется поправима.. у квадратного колеса всегда можно сточить уголки ;-)

Ramzess 29.09.2009 23:41

Цитата:

Сообщение от tenshi (Сообщение 31111)
в яваскрипте оно сделано через задницу :-E

Согласен...:haha: :haha: :haha:

micscr 01.10.2009 15:40

Цитата:

Сообщение от Gvozd (Сообщение 31105)
только мозг пришедший из другого языка с другой моделью.
и то, только в процессе адаптации и изучения
прототипное ООП само по себе не менее логично, чем классовое
PS что-то офтоп, пошел

Вот про прототипное ООП хотелось бы почитать поболее. Чтоб лучше понять(намек на хорошую ссылочку:) ).
Мне как программировавшему на Delphi больше всего в ООП а-ля JS
пока напрягает что переменные объекта всегда открытые. Реализовать наследование особо пока не надо было.

Kolyaj 01.10.2009 15:41

Цитата:

Сообщение от micscr
напрягает что переменные объекта всегда открытые

Ну открытые и открытые, напрягает-то чем?

B~Vladi 01.10.2009 16:16

Цитата:

Сообщение от micscr
Вот про прототипное ООП хотелось бы почитать поболее. Чтоб лучше понять(намек на хорошую ссылочку ).

http://javascript.ru/blog/Dmitry-A.-...-CHast-7.-OOP..

micscr 01.10.2009 16:34

Цитата:

Сообщение от Kolyaj (Сообщение 31418)
Ну открытые и открытые, напрягает-то чем?

Как по мне в ООП открытые переменные - зло.
Для себя так я конечно напрямую из одного пользовательского
объекта не меняю свойства другого через public св-ва, но встречается
и не свой код и тогда :cray:

B~Vladi спасибо за ссылку.

B~Vladi 01.10.2009 16:50

micscr, мы с вами находимся в разных мирах. Уверен, после знакомства с JS "поближе", всё встанет на свои места:)

micscr 01.10.2009 17:09

Цитата:

Сообщение от B~Vladi (Сообщение 31457)
micscr, мы с вами находимся в разных мирах. Уверен, после знакомства с JS "поближе", всё встанет на свои места:)

Хотелось бы, но главное чтоб не с ног на голову.


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