Сохранен 522
https://2ch.hk/pr/res/404097.html
24 декабря Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!

Официальный JavaScript тред #4

 Аноним OP 10/11/14 Пнд 00:22:39 #1 №404097 
14155681592780.jpg
Официальный JavaScript тред #4

Предыдущий: - https://2ch.hk/pr/res/396358.html

Шапка тренда переезжает в репозиторий - https://github.com/ID25/js-thread (Делать пулл реквесты с корректировками и ссылками на материалы приветствуется).

Что же на повестке дня?
А у нас охуенные новости. Уже не секрет что вот вот выйдет angular 2.0. Вроде как до нового года обещают выпустить. Сочные баттхерты наши западные друзья уже успели излить по этому поводу, ибо изменения довольно критичные.
Вот ты хикка сыч, листаешь сотни блогов и книг, пишешь свою todo-шку, и тут хуяк, все это нахуй не нужно, пошел вон переучиваться.
(На самом деле бугурт не обоснован, вкатится в 2.0 будет просто, да и никто не отнимает у вас возможности писать на 1.3).

Следущая новость, связана с Meteor:
Анонас, бросай всю эту хуйню с коа експресс и ангулярами, АМЕРЕКОСЫ СУКА влили 16 лямов в развитие meteor, а это тебе не хуйня... Плюсы у метеора очевидны, он очень хипстерский, максимум риал тайма, байндинг сразу в разных окнах без перезагрузок, пишешь на одном фреймворке и серверную и клиентскую логику. ТЕПЕРЬ НЕ НУЖНО УЧИТЬ СОТНИ ЕБАНЫХ ФРЕЙМОВРКОВ. ВЫБЕРИ МЕТЕОР И ТВОЯ ЖИЗНЬ ИЗМЕНИТСЯ!
Правда не скоро, выстрелит продукт разве что через годик другой, как на рынке засядет.
К слову сказать, изучать его можно уже сейчас, вышла стабильная версия 1.0 и есть хорошая документация. Правда виндобляди соснули по умолчанию, пока что поставить метеорчик на шиндовс нельзя, это удел юниксобогов.

Ну и reactJS, разумеется. Посмотрел я его, и ОХУЕЛ. Какой мудак придумал писать html внутри js? Это извращение и очень даже на любителя, если тут кто-то пишет на реакте, поделитесь секретом, нахуй это все нужно?

Так же скоро выйдет божественный jquery 2.0, что бы мы без него делали. Правда ничего интересного в нем не будет. Такие дела.

Ну а мы продолжаем изучать этот божественный язык, созданный богом Айком всего за 10 дней (ничего не напоминает?)

Официальный JavaScript тред #4 объявляю открытым!
Аноним 10/11/14 Пнд 00:43:31 #2 №404106 
14155694114740.png
>ОП-пик
Аноним 10/11/14 Пнд 03:53:15 #3 №404158 
ОП, зайди в скайп вечерком.

мимоспортфентезикун
Аноним 10/11/14 Пнд 09:16:58 #4 №404218 
>>404097
Господи, как же припекло.
Александр
Аноним 10/11/14 Пнд 09:20:42 #5 №404221 
>>404106
Ой блять, ты качек чтоли?
sageАноним 10/11/14 Пнд 11:40:15 #6 №404256 
>14155681592780.jpg
SOOQA!!1
Аноним 10/11/14 Пнд 13:54:49 #7 №404295 
>>404097
Подписался тредж.

>Meteor
Очередная параша уровня XAMPP только для js-блядей?

>angular 2.0
Нинужно.

>reactJS
Ебанически тяжелая хуита.
Аноним 10/11/14 Пнд 14:00:41 #8 №404296 
Поясняйте за vue и mithril теперь.
Аноним 10/11/14 Пнд 15:28:14 #9 №404322 
> (На самом деле бугурт не обоснован, вкатится в 2.0 будет просто, да и никто не отнимает у вас возможности писать на 1.3).
Совсем от гугловой спермы мозг раскис.

Почему еще не было бугорта на хабрапараше?
Аноним 10/11/14 Пнд 15:37:16 #10 №404328 
>>404322
>Почему еще не было бугорта на хабрапараше
Не перевели еще.
Аноним 10/11/14 Пнд 15:54:04 #11 №404333 
>>404328
Проиграл.
Аноним 10/11/14 Пнд 16:00:05 #12 №404335 
На самом деле, разве может быть более эффективный способ разорвать жопу у человека использующего технологию YOBA, чем выпустить новую технологию вместо YOBA, абсолютно ни в чем не совместимую с YOBA, и назвать ее YOBA 2
А ведь это любимая забава хуюгла.
Аноним 10/11/14 Пнд 17:02:03 #13 №404354 
>>404296
митрил - годнота, автор - очевидный битард, вот тут обсирает другие фреймворки http://lhorie.github.io/mithril/comparison.html
Аноним 10/11/14 Пнд 17:13:45 #14 №404356 
14156288250740.png
>>404354
То что автор битард, видно уже из гайда.
Аноним 10/11/14 Пнд 17:15:20 #15 №404357 
>>404097
Чо по ангуляру почитать на русском? Я пидарашка и не могу в английский.
Аноним 10/11/14 Пнд 17:17:31 #16 №404359 
>>404357
Тогда забудь. Сириусли, я когда изучал Angular, практически сразу бросил искать инфу на русском. Вопросов возникает настолько много, что и англоязычной инфы не всегда хватает, а слоу-переводов уж тем более. Кроме того, никто не будет тебе переводить ответы со stackoverflow, которые иногда ценнее статей и офф. документации
Аноним 10/11/14 Пнд 17:18:50 #17 №404361 
>>404357
http://angular.ru/
Аноним 10/11/14 Пнд 17:32:02 #18 №404369 
>>404359
Стэк оверфлоу могу читать. Я думал на русском какую книжку почитать типа в стиле learn by doing с задачками
Аноним 10/11/14 Пнд 17:38:12 #19 №404376 DELETED
Жявапидорги, вы быдло!
Аноним 10/11/14 Пнд 17:46:13 #20 №404382 
>>404376
Java тред в другом месте, манька.
Аноним 10/11/14 Пнд 17:56:05 #21 №404393 
поясните про реактжс
вчера написал слайдшоу для гельбуры, до этого никогда не имел дела с такими фраймворками, доставило, и подрочил норм

ну так вот

я знаю что сейчас ангуляр во все поля
есть смысл учить реактжс? он лучше ангулара? не хочу на хипстерскую поебень тратить время.
Аноним 10/11/14 Пнд 18:14:00 #22 №404418 
>>404393
Я бы сказал, будущее за FRP и смешению SPA и страничного подхода (аккуратное дублирование).
Аноним 10/11/14 Пнд 18:16:06 #23 №404419 
>>404418
а инструменты какие?
Аноним 10/11/14 Пнд 18:40:56 #24 №404433 
>>404393
>не хочу на хипстерскую поебень тратить время.
>javascript
Аноним 10/11/14 Пнд 18:48:39 #25 №404436 
>>404433
ClojureScript, Elm.
Аноним 10/11/14 Пнд 18:50:36 #26 №404439 
>>404369
Под ответами на стэк оверфлоу я подразумевал такие, как этот: http://stackoverflow.com/questions/9682092/databinding-in-angularjs#answer-9693933
Если можешь читать стэк оверфлоу, значит не совсем ноль в английском - прокачивай его. Для изучения ангуляра советую курс на codeschool - самый простой туториал из всех, что я видел.
Аноним 10/11/14 Пнд 18:52:00 #27 №404441 
>>404436
Блядь, совсем забыл. GWT!
Гвит, сука! интерфейс экстендс интерфейс! тройной дженерик! Пачки сеттеров! Тонны бойлерплейта! Подбор CSS, чтобы хоть как-то отображалось! Мыло АПИ!
Одно удовольствие, в общем.
Аноним 10/11/14 Пнд 18:52:25 #28 №404443 
>>404439
так ангулар или реактос? что лучше?
Аноним 10/11/14 Пнд 18:54:22 #29 №404445 
14156348620610.png
>>404443
404444
ELM!
Аноним 10/11/14 Пнд 18:54:58 #30 №404446 
>>404443
Лучше для чего ? Я реакт не знаю, как и ОП недоумеваю, зачем они пихают HTML в JS-код
Аноним 10/11/14 Пнд 18:56:14 #31 №404448 
>>404446
>Лучше для чего ?
дженерал вебдевелопмент
сложный круд для одминки
одностраничные приложения
вот это вот всё
Аноним 10/11/14 Пнд 20:29:19 #32 №404495 
>>404445 джва чаю этому
Аноним 10/11/14 Пнд 20:53:53 #33 №404506 
Писал на метеоре где-то год назад, когда он еще не был стабилен (по-моему версия 0.8-0.9).

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

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

Сразу после того, как попробовал Meteor, немного в нем разочаровался и перешел на Rails как бэкэндщик. С тех пор только с любопытством посматриваю как развивается этот проект.
Аноним 10/11/14 Пнд 22:03:25 #34 №404518 
>>404506
>Rails
Поясните за Ruby и за Rails, сосоны.
Аноним 10/11/14 Пнд 22:12:20 #35 №404520 
>>404518
параша уровня пхп
объебосы, считающие себя ИЛИТОЙ но не осилившие нормальные языки попадают на РУБИ ОН РЕЛЬС
Аноним 10/11/14 Пнд 22:12:26 #36 №404521 
>>404518
https://2ch.hk/pr/res/384220.html

добро пожаловать, сударь
Аноним 10/11/14 Пнд 22:23:16 #37 №404531 
>>404518
Гораздо взрослее и продуманее любой джаваскриптовой технологии на данный момент.
Аноним 11/11/14 Втр 01:56:48 #38 №404593 
>>404097
>пикрилейтед
sooooqqaaa
Аноним 11/11/14 Втр 08:34:52 #39 №404618 
Друзья, посоветуйте софт для начинающего, под линукс. Сейчас накачал книг, онлайн учебники изучаю. Решил саморазвиваться, студент, отличник, победитель олимпиад, факультет автоматизация технологических процессов. Заранее спасибо. Мир чуваки.
Аноним 11/11/14 Втр 10:30:05 #40 №404637 
>>404618
Vim, GHC. Самое то для начинающего.
Аноним 11/11/14 Втр 12:00:36 #41 №404663 
>>404518
MVC на сервере уже нивтрэнде.
Аноним 11/11/14 Втр 12:07:56 #42 №404668 
>>404618
WebStorm, npm, chrome
Аноним 11/11/14 Втр 12:12:43 #43 №404669 
>>404663
Лол, а что тогда в тренде?
Аноним 11/11/14 Втр 12:53:48 #44 №404691 
>>404668
кром? FF Dev Edition.
+zsh
Аноним 11/11/14 Втр 16:17:04 #45 №404730 
>>404668
Можно из бесплатного?
Аноним 11/11/14 Втр 16:24:50 #46 №404736 
>>404730
Vim, если осилишь.
Или тут вот Brackets релизнулся. Atom, Sublime, et cetera. Или например Cloud9 IDE или plunker (для всякой хуиты лучше не найдешь).
Все редакторы поддерживают Vim-mode, так что можно приобщаться. Во вторых, после релиза NeoVim, все редакторы бубуд поддерживать Vim в виде плагина.
FF, npm, chrome, node/static-server, как писали выше.
Еще Yeoman для генерации минимального app.
Аноним 11/11/14 Втр 16:53:17 #47 №404743 
14157139979880.png
Может быть для /pr отключить спам лист, расписал всё красиво и грамотно. Найти, что именно не понравилось - день работы, поэтому просто оставлю прилагаемый скрин, демонстрирующий уёбищность используемых, скажем в jsLint патернах.
Аноним 11/11/14 Втр 16:54:05 #48 №404745 
>>404743
Кто скажет, что пикрилейтед код читаем лично нассу в рот.
Аноним 11/11/14 Втр 16:55:06 #49 №404746 
>>404743
Домашнее задание - переписать так, чтобы было максимально читаемо.
Аноним 11/11/14 Втр 17:00:03 #50 №404748 
14157144031580.png
>>404746
И сразу ответ
sageАноним 11/11/14 Втр 17:07:43 #51 №404754 
>>404743
Как код на скрине, так и твой пост написаны в одном стиле. непонятном
Аноним 11/11/14 Втр 17:09:23 #52 №404756 
>>404754
Ещё бы, в понятном стиле маккаба не пропустила. Пояснил же, что не дала запостить грамотный пост.

Что-то было из спам листа. Слово или конструкция, разваливающая сайт.
Аноним 11/11/14 Втр 17:11:44 #53 №404757 
14157151040830.jpg
>>404736
Спасибо, оказывается Sublime вполне бесплатен, сейчас капитально надо подойти к рабочему окружению и софту, пока осваиваюсь, надеюсь на сотрудничество, анон.
Аноним 11/11/14 Втр 17:35:00 #54 №404766 
>>404748
>if (a = 1) {
лол
Это тебе не SQL. ==
mad skillz:
a == 1 ? doOne() :
a == 2 ? doTwo() :
a == 3 ? doThree()
На самом деле, если бы в JS был нормальный свич-кейс, то лучше через него. А тернарки никогда не используй.
Аноним 11/11/14 Втр 17:45:50 #55 №404773 
14157171504880.png
>>404766
Смотри, допустим a = 0, в твоём красивом коде, произойдёт минимум 3 проверки, а если условия проверяются 60 раз в секунду, то это 180 проверок в секунду, а если условий не 3, а 10, то все 600 в секунду.

Тогда как если a = 0 в представленном виде будет сверять лишь 60 раз в секунду.

На счёт свичей, да безусловно это было бы хорошим решением, но я не уверен, что свич так же быстр как даже твои ифы подряд.
Аноним 11/11/14 Втр 17:46:48 #56 №404774 
>>404773
>три проверки
Сорри, обосрался, не заметил : на концах. Нет, вообще норм. Беру твой подход.
Аноним 11/11/14 Втр 18:08:22 #57 №404779 
Говорят, что нодовцы гомосексуалисты, а вот создатель JS против однополых браков http://projects.latimes.com/prop8/donation/8930/ даже деньгами.
Аноним 11/11/14 Втр 18:25:13 #58 №404784 
>>404773
Меньше считай такты процессора. Преждевременная оптимизация - серьезный антипаттерн. Чистый код лучше быстрого в 90% задач.
Аноним 11/11/14 Втр 18:34:55 #59 №404786 
>>404779
его пидорнули
Аноним 11/11/14 Втр 18:54:35 #60 №404794 
>>404097
Учу этот метеор потихоньку вот уже месяц. Мне нравится.
В одном уверен, делать на нем что-то в команде - полный пиздец.
Аноним 11/11/14 Втр 19:07:00 #61 №404798 
Вопрос, глупой обезьяны котаны.
Нужен скрипт, который бы при достигании полной длины вертикальной прокрутки откручивал страницу вверх в начальное стостояние.
Надеюсь, понятно написал.
Целевой браузер - фаерфокс. Скорее даже старый фаерфокс.
Как это можно сделать, к чему цепляться и что отслеживать?
Аноним 11/11/14 Втр 19:10:01 #62 №404799 
>>404798
> Вопрос, глупой обезьяны котаны.
Я не знаю, откуда тут запятая.
> достигании
Блядь. Ну вы поняли.
Я просто очень хочу спать, а завтра сне придется в считанные часы решать эту задачу без доступа к интернету.
Аноним 11/11/14 Втр 19:21:29 #63 №404802 
>>404799
>без доступа к интернету
Но почему?
Аноним 11/11/14 Втр 19:33:42 #64 №404809 
>>404335
>абсолютно ни в чем не совместимую
Ты ньюфаг или тралль? Принципы-то те же, разница в синтаксисе и количестве/расположении сахара осваивается за неделю.
Аноним 11/11/14 Втр 19:39:25 #65 №404811 
>>404798
Сравнивай высоту viewport'а браузера и высоту div'а и скролль вверх если они совпадают.

Без интернета с таким уровнем понимания у тебя ничего не получится, так что лучше сделай это сейчас.
Аноним 11/11/14 Втр 20:13:32 #66 №404824 
>>404773
ифы, каейвены, пиздец.
[doOne, doTwo, doThree][a - 1]();
Аноним 11/11/14 Втр 20:28:53 #67 №404833 
>>404802
Потому что буду сидеть на режимном объекте.
>>404811
viewport - это что-то про мобильники, как я понял. Мне же нужен старый фаерфокс.
Аноним 11/11/14 Втр 20:31:29 #68 №404835 
>>404824
два чая господину
Аноним 11/11/14 Втр 20:50:09 #69 №404844 
>>404833
Viewport – это, грубо говоря, окно браузера, а не "что-то про мобильники".
Аноним 11/11/14 Втр 20:57:51 #70 №404850 
>>404824
и, если doOne doTwo doThree не однострочники, то получается столько же писать, сколько и в кейсе. А читаемость устремляется к нулю.
Аноним 11/11/14 Втр 21:10:20 #71 №404856 
>>404850
Никто не мешает тебе их заранее в переменные засунуть. Алсо, если это не однострочники, то кейсы быстро превращаются в одну огромную лапшу. Кейсы, кроме очень редких случаев, которые я даже не могу сейчас придумать, вообще не стоит использовать.
Аноним 11/11/14 Втр 21:13:54 #72 №404861 
>>404844
Firefox3.5 не поддерживает это дело.
Буду копать в сторону всяких offsetHeight.
Аноним 11/11/14 Втр 21:57:52 #73 №404888 
>>404833
>Потому что буду сидеть на режимном объекте.
На всякий случай сообщаю, что со второй формой тебя не выпустят из Мордора вообще никогда. С первой - пять лет с момента увольнения.
Аноним 11/11/14 Втр 22:55:15 #74 №404909 
Вопрос значит у меня. Вот есть объект с функцией
function govno (huy,pizda,jigurda){
huy = huy;
pizda = pizda;
jigurda = jigurda;
};

Ну вы наверное поняли суть вопроса. Что насчет правил именования аргументов, не будет проблем если я буду присваивать такие же имена как и у переменных внутри объекта?
Аноним 11/11/14 Втр 22:58:01 #75 №404910 
14157358816720.png
>>404743
Аноним 11/11/14 Втр 23:02:32 #76 №404913 
>>404909
Это называется смена указателей. В js переменные это ссылки на объект.

Вообщем, можно, а иногда даже нужно так делать, но в твоём примере у тебя там вообще ничего не происходит.

Только я бы рекомендовал объявлять переменные через var так по 5 стандарту, на который обязательно через лет 5 будет ориентироваться весь WWW интерпретатор не разрешит тебе такого вольного объявления.
Аноним 11/11/14 Втр 23:04:23 #77 №404914 
>>404909
У тебя уже внутри функции huy, pizda & jigurda будут инициализированы тремя переданными аргументами. С другой стороны, если ты используешь зайчатки ООП, то в прототипе пиши тогда this.huy = huy
Аноним 11/11/14 Втр 23:11:48 #78 №404916 
>>404910
что за шрифт?
Аноним 11/11/14 Втр 23:12:11 #79 №404917 
14157367313010.png
>>404910
Лол, зачем ты в первое условие добавил <>? Если a === 1, очевидно, что проверять >< не требуется.

Такое решение уже было, как сказал анон если не ебёт производительность используй switch-case конструкцию.

Роль > < - отсеять выходящие за пределы значения, чтобы лишние условия не проверялись. Т.е. если a < 1 или a > 3, то остальные проверки можно не совершать.

if (a > 1 && 3 < a) { if.. } //если a вне диапазона, не сверяем с нужными значениями
Аноним 11/11/14 Втр 23:54:29 #80 №404925 
14157392691340.png
>>404798
Высоту страницы получишь через
document.body.scrollHeight
http://jsfiddle.net/y210vweb/

Далее в событии window.onscroll сверяешь
document.body.scrollHeight //высота страницы
с суммой
window.pageYOffset + document.documentElement.clientHeight //проскролено
http://jsfiddle.net/9ozj82t7/1/
Аноним 11/11/14 Втр 23:54:55 #81 №404926 
14157392953700.png
>>404925
Аноним 11/11/14 Втр 23:59:46 #82 №404927 
>>404926
Если они равны или прокручено больше, чем высота страницы (что на самом деле не произойдёт), то делаешь
window.scrollTo(0, 0);
// где аргументы это координаты точки, куда тебе нужно проскролить.
Аноним 12/11/14 Срд 00:01:09 #83 №404929 
>>404925
Спасибо тебе, анон!
Это именно то, что мне было нужно.
Добра тебе.
Аноним 12/11/14 Срд 00:11:00 #84 №404937 
>>404916
Внешне похоже на дефолтный скин WebStorm'а, погугли, какой шрифт там используется
Аноним 12/11/14 Срд 00:21:54 #85 №404940 
>>404909
Не понимаю, зачем это делать. Глобальной переменной создано не будет, но всегда используй var или лучше let.
>>404824
Я бы не спешил наливать ему чаю. Это будет работать только в сферических условиях.
>>404910
0/10
>>404917
Можно использовать функции как параметр.
(fn, arg) -> fn(arg)
Аноним 12/11/14 Срд 01:02:21 #86 №404946 
>>404940
Я имею ввиду как мне тогда обызвать параметры чтобы по уму все было. Я сам двоить не хочу но просто по сути это верно что передаем хуй и пизду чтобы обновить значение хуя и пизды, не писать же мне новыйХуй новаяПизда. Или писать? Тут вопрос больше не в логике а в архитектуре и подходе.
Аноним 12/11/14 Срд 01:19:15 #87 №404948 
14157443554370.png
Помогите нуфагу. Суть вопроса — хочу через соснольку подключиться к сайту и использовать его API для прослушивания ивентов и реагирования на них. Сайт — рlug.dj, соответственно бота для румы сделать хочу.

Собственно, сам скрипт реагирования на ивенты есть, если я его в гризманки в фаерфоксе вставлю то всё работает как надо. Трудности же у меня с безбраузерным подключением, я просто не знаю, с чего начать и что в целом нужно для этого сделать.

Весь лог подключения к сайту такой — http://anotepad.com/notes/4937237 (жирным выделено, на мой взгляд, важное).
Например, на строке
>GET https://shalamar.рlug.dj/socket/info
Видимо, получается инфа о сокете, так как в идущей дальше
>https://shalamar.рlug.dj/socket/210/gx9ygtlb/websocket
вот эти вот 210/gx9ygtlb всегда разные.

Если сделаю WebSocket по этому адресу, то подключение открывается, получаю сообщение с data="o", а потом постоянные "h" идут. "o", я так понимаю, open, а h — hello (поллинг типа).
На скрине есть и плюс в окошках открыто то, что передаётся/получается в этих двух GET запросах фаерфоксом во время загрузки сайта.

Вот. А что с этим дальше нужно делать я что-то не догадываюсь. Там куки какой-то передаётся, но в скрипте-то у меня его нет. Теоретически могу из фаерфокса достать и скормить скрипту, наверное, но как?

Сосбтвенно, вот, что нужно читать (именно конкретно по задаче, так как цели учить джаву особой нет). Ну или хотя бы по пунктам расписать, что нужно сделать для решения моей проблемы (например: 1. открыть сокет; 2. отправить такое-то сообщение; 3. получить такое-то; 4. ???; 5. Запускай работающий в гризманки скрипт.). Заранее спасибо.
Аноним 12/11/14 Срд 01:24:20 #88 №404949 
14157446602710.jpg
Господа, реквестирую годный пример модульного мвц приложения на JS. Ровный, со структурированным и понятным кодом. Желательно рабочее приложение, а не лаба студентоты. Ну и да, пожалуйста без этой вашей декларативщины.
инбифо: TodoМВЦ
Аноним 12/11/14 Срд 01:27:33 #89 №404950 
>>404946
Если ты передаёшь параметрами, тебе не надо объявлять новые переменные.

Просто если ты передал функции хуй с пиздой, инициализировать их не требуется.

function sex(dick, pussy){
return dick + pussy;
}

var sexChance = sex(mike.dick, masha.pussy);
Аноним 12/11/14 Срд 01:30:01 #90 №404951 
>>404940
Насколько я помню let появился в 6 версии стандарта и явно несовместим с текущим.

У меня даже хром последний ругается, когда я делаю for(let i = 0..){}
Аноним 12/11/14 Срд 02:06:54 #91 №404953 
>>404951
Хром не поддерживает ES6, если там чо-то не указать в настройках. FF, IE поддерживают изкаробки.
>>404948
tl;dr
Въеби cUrl. Хотя не, есть какая-то херня для NodeJS для этого. Если не node/phantom, то таки cUrl или что-то более хайлевельное.
>>404949
>не лаба студентоты
>понятным кодом
>без этой вашей декларативщины
Лол.
Аноним 12/11/14 Срд 02:07:40 #92 №404954 
>>404953
FF, IE поддерживают let
Аноним 12/11/14 Срд 02:44:51 #93 №404957 
>>404953
>Въеби cUrl
Ну так и что мне с ним сделать-то? Что будет представлять из себя процесс такого подключения к сайту? (К phantom'у тоже относится вопрос.)

>Если не node/phantom
У меня есть одно "готовое" решение, но оно требует phantomjs 2.0, которого ещё нет и из сорса не компилится, а с 1.9.8 (если удалить проверку версии) не подключается.
Фантомом там создаётся ssl-protocol, создаётся страница какая-то, потом фантомом получаются куки и отправляются. Собственно, что в этой цепочке такого важного и меняющего, что вдруг с 1.9.8 оно не работает и чем это можно заменить?

>tl;dr
Ну так я пытался наиболее подробно описать, что мне нужно, чтобы ответить можно было нормально, а не "въеби фантом/curl". Это я и так узнать мог, помощи от этого мало. А сам вопрос во втором абзаце целиком поставлен, дальше только специфические подробности.
Аноним 12/11/14 Срд 11:07:20 #94 №404985 
Все эти попытки сделать из js то, чем он не является, а именно сделать его более строгим и менее гибким.. Зачем?

Я полюбил js как раз за то, что могу сложные вещи делать просто и элегантно (анонимные функции, callbacks..).

То, что есть люди, которые не понимают суть асинхронности, кто привык, что их куски дерьмового кода должны всегда исполняться сверху вниз пусть продолжают работать в c.
ATOMSHELL Аноним 12/11/14 Срд 11:27:07 #95 №404986 
14157808278470.gif
Анан, требуется твое мнение. Начал делать проект на atom-shell и встал вопрос какую хипстерскую библиотечку использовать: angular+bootstrap vs polymer.
C ангуляр я примерно год работал, но он десредитирован 2.0 + хочется чего-то нового.
В конечном счете нужна гибкость/модульность/структурированность, подгрузка компонент (ng-include, дерективы) ну и биндинги чтобы в дом руками не лазить.
Polymer просто привел как что модное, интерфейс думаю будет дизайнер интерфейсов придумывать так что прикольные контролы возможно и не будут использованы.
угловат 12/11/14 Срд 11:33:33 #96 №404987 
div parentctrl
div childctrl

parentctrl
function foo=(){};

childctrl
bar = new foo(); >foo is not defined

ЧЯДНТ?
Аноним 12/11/14 Срд 12:59:01 #97 №405009 
>>404987
Попробуй еще раз.
Аноним 12/11/14 Срд 13:58:39 #98 №405038 
>>404987
Функция конструктор не так работает, а вот так

Foo = function(one){
this.property1 = one;
..
}

bar = new Foo(1);
bar2 = new Foo(343);
Аноним 12/11/14 Срд 14:32:57 #99 №405048 
>>405038
>Функция конструктор не так работает
Но они работают, когда находятся в одном контроллере.
Аноним 12/11/14 Срд 14:46:31 #100 №405052 
>>405038
Чтоу?!
>>405048
Ну так заинъектай, ёба. Что там у тебя, ангулар? Сделай фэктори, например.
Аноним 12/11/14 Срд 15:28:46 #101 №405065 
>>405052
>Ну так заинъектай, ёба. Что там у тебя, ангулар?
Везде написано, что дети прототипично наследуют от родителей, а foo почему-то из childctrl не видать. При попытке заинъектить родителя в ребенка РОСКОМНАДЗОР РОСКОМНАДЗОР МИЗУЛИНА МИЛОНОВ получается ошибка инъектора.
>Сделай фэктори, например.
Придется наверное. 250 строчек кода это еще преждевременная оптимизация?
Аноним 12/11/14 Срд 16:37:41 #102 №405090 
>>405065
Я не понимаю, что за каша у тебя в голове.
Делаешь фабрику, которая просто обертка над классом родителем.
Инъектаешь фабрику куда угодно и используешь класс.
angular.controller 'app', 'NameCtrl', (
$http, $state, ParentClass
) ->

class ChildCtrl extends ParentClass
Аноним 12/11/14 Срд 16:46:40 #103 №405093 
14158000006970.jpg
Вкатываюсь в этот ваш Ангуляр. И хочу сделать так, чтобы у меня страница обновлялась(конечно не вся, а та область, где данные изменились), после того как я обновил данные на сервере, т.е. получил от $http.post, success ответ. $http.post я делаю внутри фабрики, и похоже что $scope.$apply из нее не вызвать. Можете подсказать если не готовое решение, то сам алгоритм динамического обновления страницы.
Аноним 12/11/14 Срд 17:16:13 #104 №405103 
>>405093
Забудь, покуда, о $scope.$apply
Angular сам разберется, как обновить данные.
$http.get().then (data) -> $scope.val = data.val
Этого хватит.
Рекомендую паттерн Resource. Есть реалзации готовые, например Rest-Angular.
Аноним 12/11/14 Срд 17:27:52 #105 №405105 
>>405103
Но скоуп я не могу использовать внутри фабрики. Илм мне надо для метод в фабрике переписать так, чтобы он возврашал promise и написать на этот метод обертку в контроллере и уже в ней написать твой метод. Но тогда получается я продублирую кусок кода просто для того чтобы получитт доступ к скоуп. Наверное у меня еще мышление не перестроилось я привык к ооп повсюду, а тут ехал фанкшн через фанкшн. Зы, пишу с телефона, возмодны ошибки.
Аноним 12/11/14 Срд 17:33:07 #106 №405106 
>>404946
Я так понял, ты имеешь ввиду что-то типа такого:

var a = 0;
var b = 0;

function test (a, b) {
a = a;
b = b;
}

Что бы это работало, нужно при присваивании указывать конкретно контекст. Например,

function test (a, b) {
this.a = a;
this.b = b;
}

http://jsbin.com/qebowicuko/1/edit?html,js,console
Аноним 12/11/14 Срд 17:46:34 #107 №405110 
>>405105
>внутри фабрики
##controller
promise = factory.method(arg1, arg2)
promise.then (data) -> $scope.val = data.val
Если использовать ресурсы, то все несколько проще.
user = new User()
_.extend $scope, {user}
## Теперь юзер привязан к скоупу
## Можно делать всё, что угодно. Sync не потеряется
user.name = 'Noname'
user.save()
user.patch {name: 'Other'}
user.refresh()
Аноним 12/11/14 Срд 18:41:38 #108 №405127 
>>405090
>Я не понимаю, что за каша у тебя в голове.
https://github.com/angular/angular.js/wiki/Understanding-Scopes
Все в родителе, кроме function foo=(){};, отлично видно из детей.
Аноним 12/11/14 Срд 21:21:33 #109 №405242 
В js слабоват, спрошу у умных людей.
Есть такой кусок кода:
[code]
var v = something.s;
foo.bar(function (callback) {
$.ajax({
data: {param: v},
// и т.д.
});
});[/code]
Я хочу повторно использовать код анонимной функции, которая передаётся в bar() - нужно вызывать foo.bar() ещё в одном месте. Проблема в том, что захватывается переменная v.
Аноним 12/11/14 Срд 22:54:40 #110 №405316 
>>405242
Филиал стековерфлоу, лол.
fn = (v) -> (callback) -> $.ajax(...v...)
foo.bar(fn(v))
Аноним 12/11/14 Срд 22:56:19 #111 №405319 
14158221799930.jpg
>>404986
Бамп вопросу про атом-шелл архитектуру.

Пидор мочерадор закрыл мой отдельный тред. Второй раз такое, нахуй закрывать треды, удалять еще ладно, но что за хуйня с закрытием?
Аноним 13/11/14 Чтв 02:13:01 #112 №405426 
>>404809
А переписывается все целиком за сколько? И как проходит НЕПРОСТОЙ РАЗГОВОР с менежерком, которому нужно еще вчера, тоже расскажи.
Аноним 13/11/14 Чтв 02:20:55 #113 №405429 
>>405426
> переписывается
Зачем?
Аноним 13/11/14 Чтв 02:29:51 #114 №405433 
>>405429
но ведь ангуляр 1.0 уже не модно-стильно-молодежно, а вторая версия с ним не совместима
Аноним 13/11/14 Чтв 02:43:47 #115 №405435 
>>405433
Ок. Тогда переписывай.
Аноним 13/11/14 Чтв 03:13:00 #116 №405441 
>>405435
Но ведь я не жсмакака
безработный хика
Аноним 13/11/14 Чтв 05:23:21 #117 №405459 
>>405106
Да, ты правильно меня понял. А я понял твой ответ. Короче все все поняли. Мы достигнули оптимизации энтропии, и это хорошо.
Аноним 13/11/14 Чтв 10:28:28 #118 №405498 
>>405316
http://habrahabr.ru/post/195944/
Читал и думал - где автор оригинального текста находит таких долбоёбов, которые на JS вопрос отвечают CS-кодом. Оказывается, вы и правда существуете. Раз так, ответь на вопрос: нахуя ? Тебе человек пишет, что он в js слабоват, а ты ему пример на кофе скрипте.
Аноним 13/11/14 Чтв 10:43:52 #119 №405501 
>>405426
>переписывается
Менять библиотеку посреди проекта? Беги оттуда нахуй.
Аноним 13/11/14 Чтв 12:10:27 #120 №405521 
>>405498
Тут всё просто. Пока макака не прикрутит
```javascript
ЕБУЧЕЕ ФОРМАТИРОВАНИЕ КОДА
```
Я буду писать на том, чтьо лучше читается без него. Кстати, зачастую это даже не CS, а псевдокод очень на него похожий.
Аноним 13/11/14 Чтв 12:16:20 #121 №405524 
>>405316
Вот JS:
var fn = function(v) { return function(callback) { $.ajax(...v...)} }
foo.bar(fn(v))
Да и в чем проблема -> ? Они есть во всех языках, даже в С++ Java. И в ES6 в том числе.
Аноним 13/11/14 Чтв 15:09:46 #122 №405568 
Подскажите пожалуйста что почитать по реализации классов, ну или куда копать. Надо что-то вроде
function xyi(dlina){this.dlina=dlina};
МАГИЯ
function pizda(glubina){this.glubina=glubina};
jigurda = new pizda(dlina,glubina);
Аноним 13/11/14 Чтв 15:28:44 #123 №405578 
>>405568
lgfy: http://learn.javascript.ru/object-methods
Аноним 13/11/14 Чтв 15:34:47 #124 №405581 
14158820874220.jpg
Моей жопной боли от архитектуры клиент-сайда в ообщем и от Ангуляра в частности.

Реквестирую какие нибудь книги по архитектуре. Вот вопросы которые у меня возникли, после использование ангуляра:
1. как лучше организовать использование моделей, в частности если у них есть отношения один-ко-многим, многие-ко-многим и тд. Есть ли какая нибудь нормальная ORM система, чтобы она за меня прописывала все рест действия. Я использовал ресурс, и там действительно есть рест действия, но я так и не понял как прикрутить в к одной модели другую. Например у нас есть дом(House) и человек(People). С отношением один ко многим. И чтобы добавить нового жильца я хочу писать что то типа:
myHome=Home.get(id: 1)#тут идет запрос к серверу который возвращает json с домом и тут же следующий запрос который возвращает людей живущем в нем и для каждого жителя создается новый экземпляр класса People и добавляется в массив peoples
myHome.peoples.add(People.get(id: 10)).save()

2. и тут же следующий вопрос, например у человека есть несколько машин, и получается что один запрос на один дом потянет за собой например 100 людей и еще 1003 машин, а если у машины при этом будет еще несколько зависимостей, то как это все остановить.

3. и сейчас делаю так: есть дроплист для домов и при изменении текущего дома посылается запрос на сервер, который возвращает жильцов дома. Так же для жильцов есть свой дроплист и при изменении жильца посылается запрос на кол-во машин. Как то все это неправильно по-моему.

4. переменные houses, current_house, peoples, current_people, cars все хранятся в $scope. Это правильно делать?

5. правильно ли в ответе на post запрос, отсылать не только код но и какие то данные?

Вообщем хочу узнать когда отправлять запросы на сервер и что он должен возвращать. Потому что все статьи в основном описывают как работать в ангуляре без сервер сайда, либо на каком то уж очень примитивном уровне.
Аноним 13/11/14 Чтв 15:45:29 #125 №405583 
>>405568
Не налегай сильно на наследование - проблем потом будет больше чем пользы. Миксины и схожие паттерны лучше.
>>405581
Короткий ответ: почитай, что такое REST. POST возвращает созданный объект. Релейшены и прочие M2M делаются на бекенде. Rest-angular.
Аноним 13/11/14 Чтв 15:52:58 #126 №405585 
>>405581
Поищи туториалы по MEAN-stack. Там как раз и Angular и Node.js в качестве бэкенда. Вне зависимости от того, что будешь использовать лично ты, можно подчерпнуть правила хорошей архитектуры.
Аноним 13/11/14 Чтв 16:12:06 #127 №405589 
>>405581
>2. и тут же следующий вопрос, например у человека есть несколько машин, и получается что один запрос на один дом потянет за собой например 100 людей и еще 1003 машин, а если у машины при этом будет еще несколько зависимостей, то как это все остановить.
Длинно - http://www.sarahmei.com/blog/2013/11/11/why-you-should-never-use-mongodb/
Коротко - если у тебя есть отношения между моделями - используй реляционную БД, блядь!
Аноним 13/11/14 Чтв 16:15:14 #128 №405591 
>>405583
На бекэнде рельсы и все отношения там прописаны. Rest-angular погуглю.

>>405585
Спасибо.

>>405589
Бд MySQL и все отношения между моделями прописаны на рельсах, как я выше написал. На бекэнде все красиво, но вот как сделать так же на фронтэнде я пока не понял.
Аноним 13/11/14 Чтв 16:31:27 #129 №405594 
>>405589
Засунь эту статью себе в одно место. Кто только не обоссал эту статью, так нет все равно тащат сюда.
Аноним 13/11/14 Чтв 16:36:41 #130 №405599 
>>405594
А что не так со статьей ? Есть примеры разбора ?
Аноним 13/11/14 Чтв 18:13:38 #131 №405630 
>>405524
Спасибо.
Тут получается, что при каждом вызове fn будет создаваться новый объект функции или всегда будет использоваться одна и та же function(callback)?
Аноним 13/11/14 Чтв 18:30:44 #132 №405632 
не знаю где спросить.
помогите, посоны

почему сборщик Gulp не хочет компилировать sass?

http://prntscr.com/55ye25

что это за хуйня выскакивает?
Аноним 13/11/14 Чтв 18:55:32 #133 №405634 
>>405630
Каждый раз - новая
Аноним 13/11/14 Чтв 18:56:49 #134 №405636 
>>405632
>Саня
>Программы
>пробелы в названии директорий
Как у тебя вообще что-то работает?
Аноним 13/11/14 Чтв 19:00:34 #135 №405637 
>>405632
Прислушайся к этому >>405636 а еще установи нормальную консоль на винду. ConEmu, например
Аноним 13/11/14 Чтв 20:04:39 #136 №405654 
14158982794290.png
Посоны, хочу я, значит, использовать в запускаемом лично мной вручную мной же в моём же браузере скрипте файл, который нужно получить с компьютера/поднятого примитивного хттп сервера (уровня python -m http.server) либо на моём, либо на другом компьютере. Любой из этих трёх вариантов годится, лишь бы работало.

Пробую в фф на пустой страничке сделать xml-запрос:
(скриншот, а то спамлист)

—> работает. (security.fileuri.strict_origin_policy, разумеется, перед этим пришлось отключить.)

Если же я пытаюсь сделать то же самое на любой другой странице:
>[Exception... "<no message>" nsresult: "0x805e0006 (<unknown>)" location: "JS frame :: debugger eval code :: <TOP_LEVEL> :: line 3" data: no]

Чего я не так делаю и что нужно исправить? Я понимаю, что безопасность и вся хуйня, но что-то у меня пригорает от этой безопасности.
Аноним 13/11/14 Чтв 20:28:46 #137 №405662 
>>405599
Её вроде даже на русский переводили и на хабр закидывали. Обсуждалось в местном монго треде который благополучно проёбан.
Аноним 13/11/14 Чтв 20:56:07 #138 №405672 
>>405521
jsfiddle и сотни других сайтов для кого придумали, мудила?
Аноним 13/11/14 Чтв 20:57:27 #139 №405674 
>>405662
Спасибо, поищу хотя бы перевод с хабра.
Аноним 13/11/14 Чтв 20:59:55 #140 №405676 
>>405674
http://habrahabr.ru/post/231213/
Аноним 13/11/14 Чтв 21:23:12 #141 №405686 
>>405676
Спасибо.
Комментарии что-то меня не переубедили
Аноним 13/11/14 Чтв 21:28:41 #142 №405689 
>>405686
В том треде закончилось чем-то вроде "монго подходит для задач где надо собирать очень много одинаковых данных и потом их как-то обрабатывать, вроде статистики какой нибудь". А целиком пихать на неё какую-то сложную структуру это фейл.
Аноним 14/11/14 Птн 12:32:08 #143 №405853 
Ангулярщики, поясните: это нормально к директивам писать сервисы ? Директивами ведь нельзя управлять напрямую из контроллеров, но иногда очень хочется. Где-то находил такой совет, но потерял
Где, блять, хоть один пример большого ангуляр приложения, что бы посмотреть, как надо делать, а как - нет
Аноним 14/11/14 Птн 13:36:09 #144 №405869 
>>405853
Спрашивай тут, я решил в JS треде прописаться.
Директива должна быть по максимуму инкапсулирована. Для динамического изменения данных (например чарт), просто в аттрибуту директивы вешается вотчер.
<chart data={{data}}>
...
directive
scope: {data: '='}
link: function ($scope, el, attrrs) $scope.watch('data', fn)
Аноним 14/11/14 Птн 15:13:57 #145 №405902 
>>405869
>Спрашивай тут
Есть код, который вычисляет несколько значений из свойств элементов коллекции, а после того, как вся коллекция отрендерена нг-рипитом, раздает получившимся дивам инлайн цсс на основе этих значений. Сейчас все это добро живет в контроллере и вызывается вотчем, но меня терзают смутные сомненья, что оно должно быть в директиве. Прав ли я, и где директиве лучше хранить промежуточные данные?
Аноним 14/11/14 Птн 15:59:49 #146 №405923 
>>405902
Я не очень понял флоу. Сначала нужно всё вычислить, а затем за один проход ng-repeat всё нарисовать. Использование инлайн-стилей должно быть оправдано. Если можно, то замени на ng-class (ng-style есть еще).
Директива является самостоятельным компонентом, не требующим контроля. Иногда можно заинъектать какой-нибудь сервис, например для хранения глобальных данных.
Аноним 14/11/14 Птн 16:21:35 #147 №405935 
http://jsfiddle.net/97u7m452/ помогите дописать калькулятор с ООП.
Аноним 14/11/14 Птн 16:40:23 #148 №405942 
>>405869
Сейчас у меня так и есть, но контроллер разросся, как говно. Хотел разбить все это дело на мелкие независимые куски
Аноним 14/11/14 Птн 16:49:34 #149 №405947 
>>405942
Сделай сервис или абстракцию над данными, etc
>>405935
У меня есть шаблон для калькулятора. http://plnkr.co/edit/ppFe47?p=preview
Можешь туда перекатить.
Аноним 14/11/14 Птн 16:52:32 #150 №405954 
>>405947
Это понятно, но непонятно, как. Хочу найти исходники нормального приложения, что бы посмотреть, как такие вещи вообще делаются. Пока нашел только
https://github.com/johnpapa/ng-demos
но это демка, с 1.5 примерами. Как придумать нормальную архитектуру для большого приложения из неё непонятно.
Аноним 14/11/14 Птн 17:12:13 #151 №405970 
>>405947
Переписал только что, щас посморю твой шаблон.
http://jsfiddle.net/w2n28v2p/1/ - вот. В браузере работает, а с фиддла не работает, нету алертов. В чем может быть проблема?
Аноним 14/11/14 Птн 17:34:38 #152 №405982 
>>405970
Выкинь onload.
Аноним 14/11/14 Птн 17:59:28 #153 №405999 
>>405982
Точно же. http://jsfiddle.net/w2n28v2p/2/
Кстати, где можно почитать про алгоритмы? Допустим я хочу сделать змейку, но понятия не имею как, пример кода не обязателен, только алгоритм построения. Где такое нарыть?
Аноним 14/11/14 Птн 20:01:45 #154 №406034 
14159845053210.jpg
Просто оставлю это здесь
Аноним 14/11/14 Птн 21:01:39 #155 №406045 
>>406034
>angularJS
Проблевался.
Аноним 14/11/14 Птн 22:03:21 #156 №406060 
>>405999
>но понятия не имею как
Какую змейку, игру телефонную? Ты не видишь, во что играешь?
Аноним 14/11/14 Птн 22:28:15 #157 №406075 
>>404986
Уже делаю на ангуляре, но все равно интересно мнение анона. Бамп.!
Аноним 15/11/14 Суб 00:51:58 #158 №406125 
>>404097
Блядь, как же заебали все эти ассинхронность, уже пукан бомбит.
Чому я не могу в привычном мне способе извлечь данные, отредактировать и засунуть обратно сука, ну почему блядь?
Тушите.
Аноним 15/11/14 Суб 01:00:53 #159 №406128 
14160024533860.png
>>404359
> Кроме того, никто не будет тебе переводить ответы со stackoverflow, которые иногда ценнее статей и офф. документации
Я больше скажу, что у ангуляра официальная документация очень плоха. Такое ощущение, что писали инопланетяне и постили лишь избранные отрывки из своего внутреннего мирка.

Видосики еще спасают дело, ну и переполненный стек конечно, без него никак :(
Аноним 15/11/14 Суб 01:04:01 #160 №406131 
>>406128
Перешёл, кстати, на чтение исходников. Почему-то там гораздо полнее и понятнее все расписано в комментариях, хотя мне казалось, что документация генерится как раз из них.
В общем, всем рекомендую.
Аноним 15/11/14 Суб 01:48:43 #161 №406137 
>>405654
бамп
Каким образом можно добиться file i/o в javascript'е, будучи клиентской стороной (не имея возможности ничего на сервере менять)?
Аноним 15/11/14 Суб 02:24:26 #162 №406141 
14160074669890.jpg
Такой вопрос, есть форма, после того как она заполнена, и нажад сабмит, она исчезает .hide()
Суть вопроса, как сохранить статус? После перезагрузки страницы, форма естественно на месте. Как такое реализовать? Желательно через ajax, json, jqurey.
Аноним 15/11/14 Суб 02:30:05 #163 №406142 
>>406141
Сам спросил, сам ответил. Кукисы и локал сторож.
Аноним 15/11/14 Суб 03:06:22 #164 №406145 
>>406137
>file i/o
Есть File API, FileSystem API, FileReader API и т.д.
Гугли.
Аноним 15/11/14 Суб 05:50:52 #165 №406148 
>>406145
Как я понял, юзер загружает файл и ты его этими командами можешь читать. А мне нужно в скрипте, который я запускаю у себя в браузере (сервер не мой, и сделать я там ничего не могу, разумеется), в переменную записать данные из текстового файла для дальнейшего манипулирования.

В общем, вручную вписал в фф <input type="file">, сбросил туда файлик и сумел прочитать. Вроде работает, спасибо.
Можно ли таким же образом как-то с <output> поиграться для записи в файл? FileWriter'а на сайте нет.
Аноним 15/11/14 Суб 13:37:12 #166 №406211 
>>406125
Можешь. Тут рядом PHP тред. Там всё традиционно.
Аноним 15/11/14 Суб 15:12:26 #167 №406248 
Что по ангуляру стоит читать/смотреть после видеокурса Shaping Up With Angular.JS?
Аноним 15/11/14 Суб 15:16:16 #168 №406250 
>>406248
toddmotto.com
https://thinkster.io/angulartutorial/a-better-way-to-learn-angularjs/
Аноним 15/11/14 Суб 21:39:48 #169 №406422 
Может мне кто нибудь пояснить что сейчас считается правильным объявлением объекта?
Куда не сунусь везде свой путь. То, obj = {}, то, huyna function = {}, то, obj = new {}. И еще с десяток путей как туда запихать методы и поля.
Аноним 15/11/14 Суб 21:53:32 #170 №406429 
>>406422
Правильный - {}
Остальные для конкретных случаев когда нужна гибкость[/s]или костыли[/s].
Аноним 15/11/14 Суб 22:10:02 #171 №406446 
>>404097
http://www.youtube.com/watch?v=mq6uCM4ynpc
Аноним 15/11/14 Суб 23:01:50 #172 №406472 
>>406211
>PHP
Фублядь.
Аноним 16/11/14 Вск 00:40:37 #173 №406541 
>>406472
Правильный ответ. Я проверял, можно ли с тобой вести диалог.
Аноним 16/11/14 Вск 00:44:11 #174 №406543 
>>406422
Делай так
obj = function(a) {
this.property = a;
this.method = function () {}
}

var objA = new objA('A');
var objV = new objV('V');
Аноним 16/11/14 Вск 07:22:15 #175 №406582 
14161117359030.jpg
Есть кто на ноде пишет? Только не для себя хелло ворлды, а реальный проект, за бабки. Испробовал все имеющиеся фреймворки, и в замешательстве. какой из них будет более универсальным, и пригодится в будущем, для сриланса или ирл? Чтобы безболезненно вкатываться в имеющийся прожект.
Аноним 16/11/14 Вск 11:02:20 #176 №406605 
14161249403000.jpg
Сап JS-сач, подскажи, может ли JS в простенькое модальное окошечко "ок/отмена"? Вот чтоб как alert, только с двумя кнопками? Гугл выдает тонну простых и красивых модальных диалогов на js + jquery + jqueryUI + css + jqueryModal + jqueryVsyaHuynya. А мне бы самое простецкое. На пикрелейтед я.
Аноним 16/11/14 Вск 11:08:54 #177 №406607 
>>406605
confirm()
Аноним 16/11/14 Вск 11:15:45 #178 №406608 
14161257456970.jpg
>>406607
То, что нужно. Спасибо.
Аноним 16/11/14 Вск 11:19:43 #179 №406610 
>>406543
И сразу нет.
Во-первых, что за new objA, когда конструктор называется obj ?
Во-вторых, методы задаются у прототипа, что бы для каждого экземпляра класса не создавать копию метода:
obj.prototype.method = function () {...}
В-третьих, >>406429 всё правильно сказал - {} подходит для большинства случаев.
Аноним 16/11/14 Вск 12:16:50 #180 №406623 
>>406543
Пофиксил школьника:

var Obj = function (a) {
this.property = a;
};

Obj.prototype.method = function () {};
Аноним 16/11/14 Вск 13:29:10 #181 №406658 
14161337504840.jpg
>>404618
АСУшник в треде! На производстве саморазвитие нахуй не нужно. Ставь PCS7 и задрачивай МЭКовские языки для ПЛК
Аноним 16/11/14 Вск 13:35:15 #182 №406665 
>>406658
И еще вопрос, котаны, какой фреймворк задрачивать для серверного javascript? express без coffeescript'a бесполезен?
Аноним 16/11/14 Вск 13:52:26 #183 №406671 
Братишки, можно ли на этом божественном яп сделать сценарий для обратной связи? пользователь вводит свои данные и отправляет их мне, типо как заказ пиццы онлайн или отправление заявок Если можно, скиньте гайд, пожалуйста.
Аноним 16/11/14 Вск 13:52:41 #184 №406672 
Хочу найти работу или хотя бы фриланс связанные с ангуляром, но пустое портфолио сильно осложняет дело. Что можно было бы сделать такого, что бы было что показать потенциальным заказчикам\работодателям, а заодно проверить свои силы ?
inb4: todomvc
Аноним 16/11/14 Вск 14:05:56 #185 №406681 
>>406671
форма обратной связи -> обработчик на кнопке отправки -> preventDefault() -> валидация формы -> создания объекта данных -> отправка объекта на сервер пост запросом -> проверка полученного ответа с сервера -> сообщение об не/успешной отправке данных
Аноним 16/11/14 Вск 15:20:05 #186 №406708 
>>406681
А теперь более наглядный гайд для js, пожалуйста.
Аноним 16/11/14 Вск 15:24:11 #187 №406710 
>>406708
То, что ты описал, делается вообще без JS.
http://htmlbook.ru/html/form
Но для этого, у тебя должен быть поднят сервер, который будет это принимать. Если у тебя его нет, то возникает вопрос, на чем писать. Можно и на JS, да. Но легче будет какой-нибудь Google Forms прикрутить и с него данные кидать прямо в таблицу.
Зависит от твоей задачи
Аноним 16/11/14 Вск 15:34:17 #188 №406719 
>>406665
>какой фреймворк задрачивать для серверного javascript?
Часто просто берут express, но он очень минималистичен, так что еще накручивают сверху кучу middleware. Если хочешь чего-то более комбайнового, где многое уже прикрутили за тебя, то посмотри sailsjs. Если тебе нужен реактивный, изоморфный, хипстерский комбайн, то бери meteor.
От себя добавлю, что если ты не уверен, что тебе нужен бекенд именно на js с нодой, то я бы посмотрел или в сторону других динамических языков, более приятных и со стабильный экосистемой, вроде руби с рельсами, где через полгода не окажется, что половина либ которые ты используешь умерла, а другая половина внесла кучу обратно несовместимых изменений. Или в сторону статических функциональных языков, вроде Scala или Haskell.
>express без coffeescript'a бесполезен?
Нет, конечно. Не знаю с чего ты так решил, особенно учитывая, что express сам по себе написан на js. Но в целом как только более-менее освоишься с js советую посмотреть и попробовать использовать для небольшого проекта coffeescript, есть хороший шанс, что тебе понравится и больше на чистом js ты писать не захочешь.
Аноним 16/11/14 Вск 15:58:16 #189 №406730 
>>406710
С сайта клиент может отправить телефон, чтобы ему перезвонили, как то так.
Аноним 16/11/14 Вск 16:43:10 #190 №406751 
14161453907840.png
>>406719
Не знаком с архитектурой express'a, но встречал разухабистый код контроллера (или чего то другого, где инкапсулирована бизнес-логика) на js и более компактный код с использованием coffeescript, на основании чего и сделал вывод о необходимости его изучения. Серверную часть могу писать на python/Django, но тенденции таковы, что javascript будет одной из самых востребованных технологий в ближайшем будущем.
Аноним 16/11/14 Вск 20:55:22 #191 №406864 
>>406751
Проблема, наверное, в том, что express не диктует, как надо писать. Вот тебе API и ебись как хочешь. В готовых фреймворках тебе все расскажут и покажут: где и как описывать модели, как хранить контроллеры, как писать роуты и прочее.
Аноним 16/11/14 Вск 20:58:14 #192 №406866 
14161606943010.png
Такой вопрос по sails и rest. Вот сделал я контроллер и модель. В модели для монги не указаны никакие параметры типа нейм или пасс, но через постман я сделал запрос http://localhost:1337/user?name=Steve
и он добавился в бд. Как? Разве не нужно объявлять параметры в модели монги? Я не могу нормально вникнуть в sails из-за этой хуйни, будто я на cms работаю, и не ебу что там под копотом происходит
Аноним 16/11/14 Вск 21:19:02 #193 №406879 
>>406866
У монги нет схемы.
Скорее всего ОРМ в сейлс работает так: если есть схема (на уровне кода, конечно), то он следует схеме (ошибки, валидация, и тп), если ее нет, следуй стандартному поведению монги (т.е. можно добавлять все что угодно).
Аноним 16/11/14 Вск 21:20:09 #194 №406882 
>>406879
s/ОРМ/ОDM
Аноним 16/11/14 Вск 21:20:57 #195 №406883 
>>406751
>>406866
>яндексопараша
>sublimetext
Тут просто быдлятник какой-то. Срочно выкатываюсь из треда.
Аноним 16/11/14 Вск 21:32:38 #196 №406891 
14161627582530.jpg
>>406883
Проиграл с далбоёба с промытыми мозгами.
ВСЕ КТО ПЕШУТ НА %ХNAME% БЫДЛО ЕБАНОЕ СУКА, %YNAME% ДЛЯ ЭЛИТЫ! КТО ПРОТИВ ТОТ БЫДЛО ЕБАНОЕ АХАХА))) МАМ, ДАЙ ЕЩЕ СМЕТАНЫ К БОРЩУ, И КУСОЧЕК ХЛЕБА ОТРЕЖЬ... СПС.
Аноним 16/11/14 Вск 21:34:00 #197 №406893 
>>406883
Ебать дебил. Посоветуй тогда мне браузер, который умеет рендерить вордовские файлы? Плюс яндексовская поделка умеет обходить прокси на работе, ибо может гонять траффик через свои сервера
Аноним 16/11/14 Вск 21:36:50 #198 №406894 
14161630108470.jpg
>>406893
ХУЛИ ТЫ ВЫЕБЫВАЕШСЯ ПИДАР ГНОЙНЫЙ, ЕСТЬ ТОЛЬКО ОДИН БРАУЗЕР - ЭТО СОБСТВЕННАЯ КОНФИГУРАЦИЯ В CHROMIUM, ВСЕ У КОГО ХРОМ, ФАЙРФОКС, ИЛИ ЧТО ТО ДРУГОЕ - БЫДЛАНЫ ЕБАНЫЕ, СУКА Я СКАЗААААЛ БЛЯЯТЬ... ТВАРИ!!!
-САШ, НУ ХВАТИТ ТАМ УЖЕ, ЩАС ДОЕДАТЬ ЗАСТАВЛЮ
-БЛИН, ПРОСТИ, ВСЕ, МОЛЧУ))
Аноним 16/11/14 Вск 22:04:55 #199 №406903 
14161646955550.jpg
>>406893
Поставь хром, как белый человек.
>word
Для белых людей был разработан google docs, умеющий в .word.

>умеет обходить прокси на работе
Хуиту какую-то написал, и рад.

>>406891
>... СПС.
Не за что, сынок.
Аноним 16/11/14 Вск 23:13:05 #200 №406919 
>>406903
Файлопомойки, в т.ч. И google drive заблокированы (мы ведь находимся внутри корпоративной сети, где весь траффик идет через прокси-сервер). Яндекс браузер позволяет по клику на ссылке отображать документы без необходимости их загрузки и запуска постороннего приложения.
Аноним 16/11/14 Вск 23:15:14 #201 №406920 
>>406894
Я даже не знаю, что ими движет. Какая разница какой я использую вебкитовый браузер? Они все практически идентичны
Аноним 17/11/14 Пнд 00:15:51 #202 №406934 
>>406919
Что ты несешь, поехавший? Открывать мылопарашу с эксель табличками можно и в браузере, вместо яндексподделки.

>>406920
Можешь не продолжать, я понял что ты быдло.
Аноним 17/11/14 Пнд 01:47:07 #203 №406972 
>>406934
Блять, ты не обучаемый? Сука, это ебанный завод с ебанным интернетом в котором открываются 3,5 сайта, никаких ебаных сервисов, это все заблоченно. Даже мыло только заводское через Lotus Notes. Дебилам, которые считают, что проектную документацию можно шарить через google drive или пересылать по почте - привет от отдела по безопасности.
Аноним 17/11/14 Пнд 02:13:34 #204 №406984 
>>406972
От заводу к заводу
мимо-работал-на-заводе-вносил-выносил-флешки-винда-стояла-от-вована-кун
Аноним 17/11/14 Пнд 02:36:10 #205 №406989 
В жизни джавасриптом почти не пользовался. Нет, не так.
Джаваскрипт не знаю совершенно. Решил обмазаться с помощью Meteor, скипая pure-js туториалы как таковые.

Каковы подводные камни?
Аноним 17/11/14 Пнд 03:59:26 #206 №407006 
>>406989
>Каковы подводные камни?
Дальше копипастинга чужого кода в редактор, и просмотра что получилось, не уйдешь.
Аноним 17/11/14 Пнд 03:59:52 #207 №407007 
Пацаны, вы юзаете svg иконочки? У меня gulp-svg-sprites коверкает половину иконок и вставляются они с лишними кусками, что это может быть?
Аноним 17/11/14 Пнд 05:12:30 #208 №407011 
>>407007
Рендери иконки через snap js или еще какую нибудь надстройку
Аноним 17/11/14 Пнд 05:12:53 #209 №407012 
>>406582
Ответьте на мой ответ, ебаный в рот.
Аноним 17/11/14 Пнд 05:53:49 #210 №407013 
>>407006
Понял, покаялся.
Аноним 17/11/14 Пнд 09:07:44 #211 №407025 
>>407012
Не зацикливайся на определенном фреймворке, начать работать в любом фреймворке на Ноде займет час, выучить его еще час.
Зачем выбирать определенный фреймворк, и ограничивать себя им? Если знаешь JS, то включиться в новый фреймворк не составит вообще никакого труда.
Аноним 17/11/14 Пнд 12:24:31 #212 №407076 
Вопрос из категории "Angular за 2000":
Пишу директиву. Как в ней отловить момент, когда она становится видимая? Ну т.е. есть директива <myDirective/>. На неё могут повесить ngHide или ngShow или вообще вручную менять видимость. Можно как-то повесить обработчик на это событие ?

Проблема в том, что в этой директиве у меня создается CodeMirror, но если его создавать в скрытом div, то он будет выглядеть как говно. Что бы это исправить, нужно после того, как div станет видимым, нужно выполнить codeMirror.refresh(), а это событие нужно как-то отловить.
Аноним 17/11/14 Пнд 13:11:56 #213 №407082 
>>407076
Может попробовать лучше ng-if?
Аноним 17/11/14 Пнд 13:48:39 #214 №407085 
Парни, подскажите ньюфане.
1. Для чего вообще используется JS? Я как-то так и не понял. Нужно ли знать HTML и всякую хуйню?
2. Стэндалон возможно пилить? Еще под iOS, Android, вся хуйня.
3. С чего начать учить и чем продолжить, чтобы въехать в эти ваши всякие ангуляры, реакты и прочие фреймворки, для чего какой нужен и тд.
Аноним 17/11/14 Пнд 13:55:39 #215 №407087 
>>407082
Проблема в том, что теоретически я не знаю, что там пользователь может поставить - ngIf, nfShow, ngHide или будет сам менять стили директивы. И багу codemirror на это тоже наплевать
Аноним 17/11/14 Пнд 13:56:07 #216 №407088 
14162217679840.jpg
>>406984
Заводы разные бывают
Аноним 17/11/14 Пнд 14:44:35 #217 №407097 
>>407087
ngHide/ngShow меняет видимость, а ngIf добавляет/выпиливает элемент из DOM. Проблем с ngIf у codemirror быть не должно.

Как ловить события несуществующего элемента изнутри директивы с абстрактным пользователем который меняет код как хочет – я не знаю, лол.
Аноним 17/11/14 Пнд 14:52:16 #218 №407099 
>>407097
Хорошо, спасибо
Аноним 17/11/14 Пнд 15:01:15 #219 №407105 
>>407085
1. Для всего. Нужно знать HTML и много всякой хуйни.
2. Да. Node-webkit, Phonegap, Codrova, etc.
3. Начать можно с курсов codeacademy. Продолжить созданием простых веб-приложений с синхронным MVC-фреймворком типа rails/django/symfony (по ним больше туториалов для ньюфагов). Через месяц/полгода/год можешь начинать осваивать javascript mvc (вот эти всякие ангуляры и реакты) и, по желанию, ноду.
Аноним 17/11/14 Пнд 17:21:54 #220 №407150 
>>407105
>Да. Node-webkit, Phonegap, Codrova, etc.
это всё равно что нельзя
мимо андроид-девелопер слава роботам
Аноним 17/11/14 Пнд 17:35:12 #221 №407155 
>>407150
Годится для 80% задач.
Аноним 17/11/14 Пнд 17:52:38 #222 №407157 
>>407155
Бросил дебила в кучу навоза и вылил на него ведро ссанины
Аноним 17/11/14 Пнд 17:53:52 #223 №407158 
>>407157
Поясняй или уебывай.
Аноним 17/11/14 Пнд 18:00:46 #224 №407163 
>>407158
В общем, даже лень тебе что-то объяснять.
Таких, как ты — миллионы, серых и отвратительных, как плевки на асфальте. Приходящих сюда ежедневно с ведром грязной воды, которой мыли полы, вместо мыслей.
Вам все уже было сказано и не раз, поэтому и встречают тебя пастой и струей ссанины.
Аноним 17/11/14 Пнд 18:03:05 #225 №407165 
>>407163
Слив засчитан.
Аноним 17/11/14 Пнд 18:03:07 #226 №407166 
>>407085

Причиной является используемая методология проектирования. Язык всегда является следствием выбранной методологии. Жаба - это язык, вышедший из ООД. ООД провоцирует рефакторинг. ООД и ООП - суксь, потому как спровоцированний ими рефакторинг - суксь. Жаба, следовательно, тоже суксь.
Аноним 17/11/14 Пнд 18:08:23 #227 №407169 
>>407165
> пок-пок-пок не опустили совсем
Ясно.
Аноним 17/11/14 Пнд 18:14:16 #228 №407173 
>>407169

Как же смешны эти безмозглые доморощенные "психоаналитики". Кто тебе, дурню, сказал, что я ненавижу быдло? Мне их скорее жалко. Я бы с удовольствием помог им стать человеками. Так что, дурилко, засунь ка свои жалкие и безграмотные потуги на анализ поглубже в тухес - не умеешь - не берись. Я то тебя правильно раскусил - как вечного дилетанта, не достигшего мастерства ни в одном из искусств. Ты - худшая из версий быдла - быдло с претензиями. Развиваться не умеешь и не желаешь, но требуешь от окружающих, чтоб тебя держали не за чмо. Но даже таких, как ты, мне просто жалко - даже презрения вы не заслуживаете.
Аноним 17/11/14 Пнд 18:37:09 #229 №407180 
>>407025
А что скажешь по поводу чистой ноды, без фреймоврков и сахара, нужно ли учить этот синтаксис, или хватит понимания, и на деле оно не пригодится\?
Аноним 17/11/14 Пнд 20:11:22 #230 №407231 
>>407166
Паша не палится
Аноним 17/11/14 Пнд 20:34:43 #231 №407255 
>>404097
На оп пике влажные фантазии и суровая реальность?
Аноним 17/11/14 Пнд 20:52:50 #232 №407260 
>>407255
Нет, наоборот.
Аноним 17/11/14 Пнд 21:49:21 #233 №407285 
>>407180
Скажу что не нужно учить синтаксис (ты ведь не стих в школе будешь сдавать), учись работать с АПИ документацией, и сам не заметишь как со временем выучишь синтаксис.
Специально что то учить - пустая трата времени.
Открой документацию, начни делать проект, к концу простого проекта будешь знать 30-50% синтаксиса наизусть.
Аноним 17/11/14 Пнд 22:33:36 #234 №407305 
>>407285
Спасибо. А проект за меня придумаешь? Писать буду сам. лел
Аноним 17/11/14 Пнд 22:35:33 #235 №407307 
>>407305
Не придумают, я уже просил.
Аноним 17/11/14 Пнд 22:40:41 #236 №407314 
>>407305>>407307
Кластер метапарадигм напишите же наконец.
Аноним 17/11/14 Пнд 23:06:29 #237 №407339 
>>407305
Да любоеочередноеКРУДговно напиши.
Аноним 18/11/14 Втр 00:11:00 #238 №407397 
14162586602250.png
>>406972
>завод, сверх-безопасность/секретность
>используют дырявую порашу от яндекса вместо браузера
Посмотрите на этого дебила.
Аноним 18/11/14 Втр 01:16:45 #239 №407413 
Проиграл с он пика, очень громко проиграл, жиза.
Аноним 18/11/14 Втр 01:17:40 #240 №407414 
>>407413
Проиграл с автокоректа ведра.
Аноним 18/11/14 Втр 01:18:56 #241 №407415 
14162627362710.jpg
Помогите ньюфагу.
Есть один модуль для node.js. Этот модуль отправляет данные на удаленный сервер и возвращает результат в виде эвента.

Как сделать так, чтобы скрипт отправлял их последовательно? Отправил один, дождался результат, отправил другой.

Ну типа

array.forEach(function(item) {
module.send(item);
// тут ждем ответа
}

Пробовал делать через костыли, типа на эвенте ебашить array.splice(0,1) и снова отправлять array[0]. Так оно работает, но эта хуйня ломает весь остальной скрипт и неоправданно усложняет его.

Няшка авансом.
Аноним 18/11/14 Втр 01:27:07 #242 №407416 
>>407415
промисы
мимо гуру
Аноним 18/11/14 Втр 07:45:27 #243 №407429 
>>407415
https://github.com/caolan/async
async.eachSeries
Аноним 18/11/14 Втр 13:37:42 #244 №407498 
>>407414
Проиграл с проигрывания.
Аноним 18/11/14 Втр 15:53:19 #245 №407539 
Господа, с d3.js работал кто? Что-то в туториалах почти все руками делается, d3.сделаймнекрасиво(data) дальше будет?
Аноним 18/11/14 Втр 19:31:47 #246 №407597 
>>407539
Что хотел-то? С d3 относительно легко работать.
Ну да, руками много, хотя это по сути своего рода верстка. Есть плагины, например для трансформов.
Аноним 18/11/14 Втр 20:01:53 #247 №407612 
14163301135110.png
>>404097
Все кукарекают про то, что нужно присоединяться к оупен сорсу. Ко-ко-ко-кодстайл, там научат, прокачаешься.
Вот конкретно скажите, носом тыкнете, куда джаваскрипт макаке приткнуться? Какой проект от всех коммиты принимает? Только крупный, чтобы потом свой профиль показывать на гитхаб
Аноним 18/11/14 Втр 21:02:31 #248 №407669 
>>407612
>Какой проект от всех коммиты принимает?
Прозвучало как "дайте няшу-стесняшу берущую на клык у каждого первого". Таких тупо нет, нюфажик.
Аноним 18/11/14 Втр 21:23:27 #249 №407685 
>>407612
>там научат
Нет.
Аноним 18/11/14 Втр 21:31:46 #250 №407691 
>>407612
>>407685
Мне эти пидоры тоже не ответили, когда их спрашивал. У меня был очень мелкий багфикс в одном node.js фреймворке. До этого долго сидел в irc канале с разработчиками, спрашивал их всякую херню по фреймворку. Нашел как-то баг, они предложили самому его исправить, подсказали, что и как, направили куда надо.
Так что оптимальный вариант, я считаю - вспомнить все, чем пользуешься или в чем интересно было бы поучаствовать, начинаешь общаться с контрибьюторами проекта и его пользователями, смотришь, какие проблемы и из-за чего возникают, пробуешь править.
Аноним 18/11/14 Втр 22:25:37 #251 №407735 
14163387375080.jpg
>>407669
Ну понятно, что часть пидаров тупых завернут. Я буду хорошо писать и стараться.
>>407691
Спасибо, хороший совет.
Посоветуй irc каналов по JS?
Аноним 18/11/14 Втр 22:28:02 #252 №407738 
>>407612
Очевидно, придумывать свое. Изи мод - написание плагинов к чему-нибудь.
Аноним 18/11/14 Втр 22:30:58 #253 №407740 
14163390587830.jpg
>Do you know what it's like to be a peasant in Soviet Russia?

>Imagine this: You're in bed. It's cold. Suddenly, guards kick down the doors to the barracks and rush in to unshackle your feet. You think of your hunger as you put on your only shoe.

>You are then marched, to the music of a whip, outside, into the snow, where you will work until dawn, when you will be given a cold cup of water and a wormy crust of bread.

>I'm sure that doesn't appeal to you as much as the American Way of Life.

>That's Communism, babes.


www.crockford.com/wrrrld/kid.html
Аноним 18/11/14 Втр 22:33:34 #254 №407744 
>>407735
Каких-то илитных не знаю, захожу в очевидные ##javascript, #angularjs и по надобности узнаю на странице фреймворка офф. канал.
У редактора Brackets, кстати, есть не только свой канал в IRC, но и теги у задач в github - starter-bug (или как-то так). Т.е. специально для тех, кто хочет начать контрибьютить, но не знает с чего начать. Правда я даже в них не разобрался, но может тебе больше повезет. Как вариант, кстати, действительно написать какой-нибудь плагин или помогать разрабатывать существующий.
Аноним 18/11/14 Втр 22:39:35 #255 №407747 
14163395759120.jpg
>>407740
>Suddenly, guards kick down the doors to the barracks and rush in to unshackle your feet. You think of your hunger as you put on your only shoe.
Аноним 19/11/14 Срд 00:50:28 #256 №407809 
14163474288100.jpg
>>404097
дискасс
https://github.com/getify/You-Dont-Know-JS
sageАноним 19/11/14 Срд 10:02:08 #257 №407840 
>>404097
>вот вот выйдет angular 2.0
>изменения довольно критичные
>пошел вон переучиваться
Нахера? Если я уже пишу на 1.3 и у меня есть нужные фреймворки, я предпочту остаться на 1.3 и пилить манки патчи для фреймворка с нужным мне функционалом. Это всегда лучше и выгоднее, чем переписывать все на новую версию.
Аноним 19/11/14 Срд 11:07:03 #258 №407852 
>>407840
Лол, быдлокодер в возрасте.
Аноним 19/11/14 Срд 13:11:14 #259 №407885 
>>407691
Мне за коммит в underscorejs 7 центов дали, лол.
Аноним 19/11/14 Срд 14:59:07 #260 №407923 
Есть одна начинающая макака с привет мир сайтом. Что перспективнее. Дальше углубляться в чистый JS HTML CSS, или сразу постигать jade(HAML?) Stylus(SASS?) coffescript?
Аноним 19/11/14 Срд 15:05:29 #261 №407928 
>>407923
jade/sass/coffee просто сахарок, так что пофиг вообще.
Аноним 19/11/14 Срд 15:09:47 #262 №407931 
14163989872320.jpg
>>407928
Я боюсь привыкнуть к сахарку, а потом словить УМЕНИЕ РАЗБИРАТЬСЯ В ЧУЖОМ КОДЕ
Ну и естественно вопрос, какой сахарок слаще.
Аноним 19/11/14 Срд 15:19:37 #263 №407934 
>>407931
ты врнучную крупный проект заебешься пилить, особенно с нуля, для привет мира хватит и блокнота.
К твоему списку еще сразу добавляй грант(или гальп) и бовер и йомен.
Не то, чтобы я не могу без всей хуйни, НО НАХУЯ?
Аноним 19/11/14 Срд 15:21:13 #264 №407936 
>>407931
>Ну и естественно вопрос, какой сахарок слаще.
мне жс синтаксис не нравится поэтмоу кофе, бэмить на стилусе проще
Аноним 19/11/14 Срд 15:30:45 #265 №407939 
>>407931
coffee/sass/jade очень хорошо сочетается, т.к. подходы к кодстайлу похожие.
В любом случае, чужой код будет использовать всякие крутые штуки, поэтому не парься.
Аноним 19/11/14 Срд 17:29:46 #266 №407956 
А есть какая-нибудь приблуда для ангуляра или нодемона чтобы на лету конвертила coffee/sass/jade? Грантить после каждого изменения лень.
Аноним 19/11/14 Срд 17:41:13 #267 №407958 
>>407956
Переключись на галп (gulp). Там из коробки есть watcher, который следит за изменениями и автоматически конвертит файлы. В гранте он тоже есть, но не из коробки и вроде как конвертит даже неизмененные файлы, тормозя процесс.
Аноним 19/11/14 Срд 18:06:59 #268 №407964 
>>407956
Бля хуй знает, что ты там грантишь, я единственное, что отключил джхинт, чтобы не заебывал каждый раз - и так билдит все пиздато
Аноним 19/11/14 Срд 18:11:19 #269 №407966 
>>407956
gulp проще. Присобачь gulp + livereload + concat и будет збс.
На вот, потыкай
http://gulpfiction.divshot.io/#/ece8e25a-82fd-4168-b009-3108d8717bef
Аноним 19/11/14 Срд 18:36:55 #270 №407972 
Посоны, я с нубским вопросом. Перерыл пол интернета, но видимо я - дебил. Пытаюсь сейчас научиться тестированию. В туториале сказано установить karma, сделать karma init и в качестве фреймворка выбрать jasmine. Там же в туториале я его, кстати, проебал была на скриншоте html-страничка с пройденными\проваленными тестами. Всё обыскал, не могу найти эту страничку - у меня результаты тестирования выводятся тупо в консоль.
Вроде смог нагуглить, что это specRunner.html и её нужно скачивать вместе с Jasmine standalone. Это так или можно как-то нормальными средствами вызвать этот репорт ?
Аноним 19/11/14 Срд 18:40:25 #271 №407974 
>>407972
http://plnkr.co/edit/tirhLwFEXLKSzukbsW1q?p=preview
Вот как должна выглядеть страница
Аноним 19/11/14 Срд 18:48:46 #272 №407976 
>>407972
Он в архиве с Jasmine валяется же.
Аноним 19/11/14 Срд 19:06:14 #273 №407979 
>>407976
Это да, но при установке непосредственно Karma через NPM его нигде нет. Ни в самой карме, не во внутренних пакетах.
И не может же быть, что джасмин устанавливается через NPM, а specRunner качается отдельно архивом ?
Аноним 19/11/14 Срд 19:07:38 #274 №407980 
>>407979
Ну заколбась ты вручную уже. Всё равно тесты ранаются на фантоме.
Аноним 19/11/14 Срд 20:15:56 #275 №408006 
14164173568870.png
>Уже не секрет что вот вот выйдет angular 2.0.
>Вот ты хикка сыч, листаешь сотни блогов и книг, пишешь свою todo-шку, и тут хуяк, все это нахуй не нужно, пошел вон переучиваться.
Blyad'. Как я проигрываю с тех людей, которые сравнивают технологию по скорости её изучения. Это ваше программирование, в частности уэбпараша, и так всего 10 книг. Плюс раз в пару месяцев почитать что-то новенькое. А тут поменялось название метода и сразу кукарекания. Это не к опу или пиэру относится, а вообще к точке зрения с которой смотрят люди. Если не умеешь читать, то в печь.
Аноним 19/11/14 Срд 22:53:32 #276 №408077 
>>408006
> и так всего 10 книг.
Что ты несешь сука? Что ты несешь? Вообще охуеть.
Аноним 19/11/14 Срд 22:59:01 #277 №408079 
>>408006
проиграл с этого антонимуса
Аноним 19/11/14 Срд 23:48:32 #278 №408102 
>>408077
Да, с десятком книг это он переборщил. Для вебпараши вообще достаточно пару страниц с документацией почитать.
Аноним 19/11/14 Срд 23:59:17 #279 №408110 
ну что всфапнули на флоу от фб? как думаете, скоро ли можно будет макать эту дилду в кофеек?
Аноним 20/11/14 Чтв 01:34:54 #280 №408136 
14164364942110.jpg
>>408110
Вут? Я что-то пропустил?
Аноним 20/11/14 Чтв 01:36:58 #281 №408137 
http://habrahabr.ru/post/215777/

Освящаю тред.
Аноним 20/11/14 Чтв 01:38:40 #282 №408138 
>>408137
>фрактал отсоса
>толстый бугурт php бляди не умеющей в асинхронность
Уносите.
Аноним 20/11/14 Чтв 01:46:28 #283 №408140 
>>408077>>408102
Вобщем-то для вэбпараши можно вообще ничего не читать, да.
Ну, так чтобы бравировать знаниями и ссать на лицо другим, одна любая книга по алгоритмам и структурам данных и одна книга по дизайну. Плюс специализированная книга по изучаемуму языку, допустим джс в нашем случае. И шо, и всё. Потом только документацию, да.
Вобщем-то для вэбпараши можно вообще ничего не читать, кроме документации, да, потому что никому твой мёржсорт нужен не будет.
Аноним 20/11/14 Чтв 01:47:01 #284 №408141 
>>408140
Обосрался.
Аноним 20/11/14 Чтв 03:36:55 #285 №408167 
>>408138

Так и 95% js-блядков могут в асинхронность только на уровне "срать не снимая свитера". А остальное они вычитали в бложеках у крутых дядь.
Аноним 20/11/14 Чтв 04:24:51 #286 №408170 
>>408167
Блять любые знания вычитываются где либо.
Аноним 20/11/14 Чтв 06:35:45 #287 №408181 
14164545455540.jpg
Сурьезный вопрос. Имеет ли смысл перекатываться с node на rails? Или дураком буду?
Аноним 20/11/14 Чтв 08:26:39 #288 №408188 
14164611995810.png
Посоны, скажите, а пикрелейтед это:
1. Защита от копания в коде пользователями в целях разобраться и что-то под себя переделать/выдрать лишь нужные куски?
2. Экономия виртуальной бумаги?
3. Какой-то компилятор/компрессор? Зачем?
4. Ебанутость создателей?
Аноним 20/11/14 Чтв 09:48:31 #289 №408194 
>>408188
Минификация. Чтобы меньше места занимало и сайт грузился побыстрее. "Обфускация" и так же некоторые оптимизаации это приятное дополнение.
Аноним 20/11/14 Чтв 09:55:27 #290 №408196 
>>408188
Просто конкатенация, для уменьшения объема кода (меньше весит, быстрее загружается), для защиты используется обфускация, если говорим про JS, то конкатинация делает во время сборки (для гранта и галпа есть плагины), там же в опциях можно указать обфускацию.
Аноним 20/11/14 Чтв 09:58:49 #291 №408198 
>>408188
Сбрось исходник, если не жалко. Попробую перепилить в ASCII-графическую картину-хуертину.
Аноним 20/11/14 Чтв 10:10:30 #292 №408204 
>>408194>>408196
>сайт грузился побыстрее.
>для уменьшения объема кода
Так это юзер-скрипт же, какое тут увеличение скорости, на 5мс, что ли? Нафиг оно никому не нужно же, по сравнению со временем загрузки самого сайта (там порядка нескольких секунд загружается). Ну. видимо, привычка такая у создателей.

Лишние отступы-пробелы-переносы_строк так сильно в js влияют на скорость, получается? Я думал интерпретатор просто проскакивает их (почти) мгновенно и всё.

Про обфускацию почитаю, спасибо.

>>408198
Не очень понял, что ты сделать хочешь, но держи —
https://d1rfegul30378.cloudfront.net/files/plugCubed.min.js Всё равно же не моё, лол.
Аноним 20/11/14 Чтв 10:24:20 #293 №408209 
>>408204
Двачую вопрос. Все говорят, что быстрее интерпретируется, но насколько реален прирост в производительности ?
Аноним 20/11/14 Чтв 10:26:10 #294 №408210 
>>408204
>>408209
Дело скорее в том, что каждый лишний пробел - это два байта информации, которую кому-то нужно будет скачать, а в нормальном сценарии использования на эти пробелы всем насрать.
Аноним 20/11/14 Чтв 10:40:51 #295 №408212 
>>408210
А насколько целесообразно эти 20кб экономить в 2014 в файле, который один раз за сессию загружается? На сайте, где нонстоп аудио/видео контент.
Аноним 20/11/14 Чтв 10:51:58 #296 №408218 
>>408212
Смотря что за файл. Иногда пробелы занимают треть объема. А довод про год не имеет смысла - раз такой подход уже работает, целесообразнее ничего не менять, будь у тебя хоть 2014, хоть 3421 год. Когда ты читаешь этот раздел, у тебя может сложиться впечатление, что постоянное переписывание существующего кода в программировании сплошь и рядом, но в реальности уже работающий код трогают только если в нем внезапно находят баг, в остальных же случаях он лежит и тихо урчит себе годами, а постоянное переписывание - это влажные фантазии студентов второго курса, которым важно чувствовать себя НА ОСТРИЕ ПРОГРЕССА.
Аноним 20/11/14 Чтв 11:01:59 #297 №408220 
14164705193670.jpg
А на вопрос никто так и не ответил.
>>408218
Сжатие же включают в том числе и в новых проектах, а не просто потому что так было и решили не менять. Кроме того, js не просто принято минифицировать, его еще и сжимают gzip'ом.

Дело в том, что когда файл скачивается через TCP, он скачивается в несколько запросов, между которыми есть ощутимые задержки (особенно на телефонах). Минифицирование позволяет и сжатие позволяют сократить число запросов в несколько раз. Кроме того, когда с твоего сервера 10000 раз скачивается сжатый файл вместо полноценного, экономия траффика получается вполне приличная.
Больше - здесь: http://engineeredweb.com/blog/why-minify-javascript/
Аноним 20/11/14 Чтв 11:08:19 #298 №408222 
>>408181
И все дружно промолчали. Молодцы!
Аноним 20/11/14 Чтв 11:24:18 #299 №408223 
>>408218
>А довод про год не имеет смысла - раз такой подход уже работает, целесообразнее ничего не менять, будь у тебя хоть 2014, хоть 3421 год.
Так я же говорю, это любительский юзер-скрипт, допиливающий пару приятных функций на сайте, написан в последние 2 года. В сжатом виде (в таком, как на скрине) — 16кБ. Для пользователя это вообще ничто, хоть ты миллион пробелов этих вставь, они видео (некоторые в хд) на сайте смотрят.

Лежит он на, по всей видимости, персональном клаудфронте, откуда его каждый день тысяча человек по несколько раз качают, поэтому-то сжатие, видимо, и приносит плоды.

И тебе >>408220 тоже спасибо.
Аноним 20/11/14 Чтв 12:02:36 #300 №408228 
>>408220
Пажжи, что еще за несколько TCP запросов? TCP работает на транспортном уровне.
Обфусированный код значительно меньше весит + можно добавить немного статической магии. Минификация и обфускация ничего не стоят (строка в конфиге), поэтому ее добавляют зачастую "чтоб была". gzip всё равно пожмет.
Во вторых, сколько бы HD файлов там не смотрелось, время открытия сайта очень сильно влияет на конверсию.
Аноним 20/11/14 Чтв 12:20:19 #301 №408235 
>>408228
> Пажжи, что еще за несколько TCP запросов? TCP работает на транспортном уровне.
Он наверное про конкатенацию 20 скриптов в один.
Аноним 20/11/14 Чтв 12:57:43 #302 №408241 
Привет анон, мне нужно реализовать калькулятор стоимости перевозки грузов, простой, городА, городБ, вес, объём.
Как это проще всего сделать?
Аноним 20/11/14 Чтв 13:50:32 #303 №408252 
>>408136
тайп чекер
http://flowtype.org/
Аноним 20/11/14 Чтв 14:06:54 #304 №408255 
>>408235
>>408228
Не запросов, а сегментов. Я так понимаю, при передаче файла по TCP он делится на несколько сегментов, где каждый из последующих больше предыдущего (см. медленный старт). Соответственно, суть в том, что бы передать файл за меньшее число сегментов, так как между ними есть определенная задержка, зависящая напрямую от расстояния, которое сегменту приходится преодолевать.
Аноним 20/11/14 Чтв 14:22:48 #305 №408257 
>>408241
В экселе.
>>408255
Браузеры кешируют соединение, так что медленный старт ты вряд ли заметишь.
Аноним 20/11/14 Чтв 17:06:42 #306 №408279 
>>408257
>В экселе.
Не смешно.
Мне надо это на сайте.
Хуй кто поможет когда попросишь, ебучая сосака.
Аноним 20/11/14 Чтв 17:30:14 #307 №408285 
14164938145090.jpg
>>404097
Реквестирую литературу, гайд, видеоурок,
все что угодно, где рассказывается как шаг-за-шагом делается приложение\игора\чатик\похуй.
На JS или ноде или ангуляре, похуй.
Буду очень благодарен.
Аноним 20/11/14 Чтв 17:34:25 #308 №408286 
>>408279
http://plnkr.co/edit/V8eVn0iZuyim2yULZloD?p=preview
Аноним 20/11/14 Чтв 17:50:05 #309 №408292 
>>408286
Смотри, правильно ли я думаю, что надо взять все города и их комбинации, и сделать из этого что-то, что потом можно умножить на цену за километр и объём/вес груза?
Эти комбинации надо же где-то хранить? json файла хватит?
Я не прошу сделать за меня.
Аноним 20/11/14 Чтв 18:18:05 #310 №408300 
>>408285
https://thinkster.io/angulartutorial/learn-to-build-realtime-webapps/
Аноним 20/11/14 Чтв 18:38:20 #311 №408312 
14164979006690.jpg
>>408300
От души, братан!
Аноним 20/11/14 Чтв 19:47:50 #312 №408344 
>>408252
>type checker
>strict types
>JS
Нахуя?
Аноним 20/11/14 Чтв 20:35:29 #313 №408365 
Хочу спросить о том, как организовывать код.

Например, есть кнопка first. Кликаешь на first и на странице из ниоткуда появляется другая кнопка second (в DOM такой ноды не было, мы, например, хранили HTML кнопки second в переменной).

Возьмем Джейквери за пример, если разместить second.click() в том же скоупе, что и first.click(), то не случится нихуя, если закешировать все селекторы, а тех, которых еще пока нет, выставить как null (например, var secondSelectorCached = null;), а потом после клика задать им реальное значение, то случится ошибка Джейквери, потому что использовать метод click() на null нельзя. Больше ни до чего толкового не додумался, разве что second.click() в first.click() вложить (или обернуть second.click() в функцию, которую потом вызвать внутри first.click()), но это как-то уродливо всё.

Есть идеи, есть икеи? Как вообще поступать с селекторами, которых в DOM еще нет, но которые потом появятся?
Аноним 20/11/14 Чтв 20:44:59 #314 №408366 
>>408365
Вроде, когда создаешь элемент, его можно закешировать как селектор.
Чтобы не было уродливых вложенных колбеков, прогрессивное человечество использует ClojureScript промисы.
>>408292
>Все города и комбинации
Похоже, нужно въебать пару алгоритмов на графах. Например, поиск кратчайшего пути. Если память не изменяет, то Дейкстра один такой сделал.
Аноним 20/11/14 Чтв 20:51:35 #315 №408367 
>>408365
Я тебя может не совсем понял, но вот:
http://jsbin.com/lovimu/2/edit
Аноним 20/11/14 Чтв 20:56:39 #316 №408370 
>>408366

>прогрессивное человечество использует промисы.
Ты об этом? https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Promise
Это черновик же еще.


>>408367

Вроде того, спасибо. Коллбеками, так коллбеками.
Аноним 20/11/14 Чтв 21:55:22 #317 №408387 
>>408370
Есть разные реализации, в том числе и JQuery. Правда не знаю, как их применить в текущей ситуации. Условно вместо

onClick(function () {...})

ты пишешь

onClick.then(function () {...})

Нужно это для асинхронных вызовов, которыми тут и не пахнет даже
Аноним 20/11/14 Чтв 21:56:35 #318 №408388 
>>408387
>и JQuery
и на JQuery

>onClick.then(function () {...})
onClick().then(function () {...})

быстрофикс
Аноним 20/11/14 Чтв 22:17:44 #319 №408395 
JS-макаки пилите
1.Город
2.ЗП
3.Чем занимаетесь
Интересно же.
Аноним 20/11/14 Чтв 22:18:44 #320 №408396 
>>404506
Год назад? 0.8? Я на него в начале сентября сел, тогда была 0.8.3, стабильность меня устроила, сейчас хоть и вышел 1.0 но из-за того что они кучу всего поменяли проект с 0.9 версии на 1.0 не смог мигрировать, но в целом сейчас проект завершен, лишь небольшая поддержка осталась, так что все норм.

> Понял одну хорошую вещь - прикольный фреймворк для прототипа чего-либо простого
Не только, у нас конечно не ебанный фейсбук, но функционал достаточно богатый. По строчкам кода думаю около 10к. И большая часть данный приходит по ресту, кстати в несколько строчек адаптировал коллекции метеора для данных получаемых по аджаксу, получилось более чем годно. Даже с позвоночником не так удобно работать.

> Как только объем проекта достигает хотя-бы средней сложности начинается ад и погибель, если не использовать MVC-шные фреймворки
Есть коллекции ака модели, шаблоны ака вьюхи и хелперы к шаблонам ака контроллеры не секу если честно что такое mvc хоть на рельсах пару лет сижу. Какие тебе еще фреймворки нужны? Ангуляр что ли этот убогий?

Вот у меня максимум претензии к масштабируемости и монге, но и с этим справится можно.


>>404794
Все норм, если изначально правильно разделишь логику, у меня уже структура выработалась, как на рельсах можно легко писать командой, так и в метеоре. Мое мнение, конечно.

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

----

Месяца три назад создавал тред по метеору, но никого не заинтересовало и ответы было спрашивать не у кого. Сейчас я более менее адекватно с ним познакомился, так что спрашивайте свои ответы.
Аноним 20/11/14 Чтв 22:24:26 #321 №408397 
>>408396
Алсо, ад и погибель в крупных проектах на js начинается, если не использовать функциональщину. Причем количество функционального кода обратно пропорционально аду в проекте.
Аноним 20/11/14 Чтв 22:52:51 #322 №408405 
>>408396
Расскажи про проект. Я так понял, самая продвигаемая фишка Метеора - автоматическое обновление контента у всех клиентов. Здорово и быстро работает на демо-проектах, а как обстоит дело с реальными проектами и большими нагрузками ?
Работа у тебя была проектная или где-то на постоянке используют такие хипстерские штуки, как Метеор ?
Что будешь делать дальше ? Востребованы знания и опыт по Метеору ?
Как пришел к тимлидерству ?
Где почитать про функциональщину в JS ?

В любом случае спасибо за то, что поделился опытом.
Аноним 20/11/14 Чтв 23:24:59 #323 №408423 
14165150991070.jpg
>>408181
Отвечайте на мой вопрос, суки!
Аноним 20/11/14 Чтв 23:30:04 #324 №408430 
>>408423
Очевидно же, что никто не знает, иначе бы ответили. Зачем тебе вообще перекатываться ?
Аноним 20/11/14 Чтв 23:35:02 #325 №408434 
>>408423
Только если тебя заебало, что в рельсах все из коробки и делается в пару строк. В ноде придется самому подбирать компоненты и вообще многое делать руками.
Чому бы не пилить и на рельсах и на ноде?
Аноним 20/11/14 Чтв 23:38:17 #326 №408439 
>>408434
Заебался поднимать готовый проект на рельсах. То одно не ставится, то другое. В туториале про что-то написано что-то вроде "если вам удалось поставить эту поебень с первого раза - вы счастливый человек".
Я понимаю, что без конкретных примеров я хуй простой, но мне лень вспоминать, что именно не работало и искать ту строчку из туториала.
Аноним 20/11/14 Чтв 23:50:25 #327 №408444 
>>408439
Так везде.
Аноним 21/11/14 Птн 00:05:10 #328 №408452 
>>408439
В node такое только с очень привередливыми пакетами и сейчас вроде пореже уже.
Аноним 21/11/14 Птн 00:13:39 #329 №408460 
Как заставить себя писать код? Я уже неделю только туториалы смотрю, и нихуя не делаю.
Аноним 21/11/14 Птн 00:16:38 #330 №408461 
тест
Аноним 21/11/14 Птн 00:17:10 #331 №408463 
Посоны, вот есть nekto. me/ chat/
Куда мне копать чтобы написать отдельный от браузера клиент? В вебе не шарю почти никак.
Аноним 21/11/14 Птн 00:19:45 #332 №408469 
>>408463
Дополню, в принципе для начала можно обойтись запущенным браузером и выдачей сообщений наружу, слыхал как-то можно свои скрипты внедрять во все это дело?
Аноним 21/11/14 Птн 00:20:17 #333 №408470 
>>408405
Проект - обработка заявок клиентов. Заявки поступаю с сайта, модераторы их сразу видят, после идет полный цикл обработки этой заявки, не уходя со страницы. Это различные звонки с сайта, отправка писем как клиенту оставившему заявку, так и клиентам сервиса с которых получаем деньги. Куча статусов у заявки, ведение истории, ведение статистики. Множество вариантов обработки заявки и множество состояний у всех объектов. Всего около 15 моделей задействовано, половина запрашивается с основного сайта, половина висит на метеоре. Короче не буду подробно описывать, суть в том, что не просто вот типа пришла заявка отобразилась в табличке и дело сделано. Достаточно специфичный проект, под конкретные нужды.

> самая продвигаемая фишка Метеора - автоматическое обновление контента у всех клиентов
После работы с ним, я понял, что главная фишка в шаблонах, ничего удобнее для js я еще не видел, с реактом, например, тоже работали, он тихо посасывает со своей простотой. Шаблоны эти чем-то похожи на полимер, но гораздо удобнее, не приходится думать о лишних вещах. Например, возьмем рельсовые вьюшки, в нее можно передать любые данные, а также к ней подключаются хелперы. Вот в метеоре тоже самое, только все это будет работать на клиенте да сео сразу нахуй, но есть костылики, будет работать реактивно и события как в бекбоне, причем в событиях будет доступен контекст шаблона. Короче шаблоны мало чем отличаются от серверных в плане удобства.

Реактивность отдельный разговор, если ты подобное своими силами будешь реализовывать на ноде и, например, soket.io то точно охуеешь, у меня был подобный опыт, тоже обработка заявок на съем недвижимости и я охуел.

> Здорово и быстро работает на демо-проектах, а как обстоит дело с реальными проектами
Также здорово и быстро, поток заявок у нас не очень большой, около 15-20 в день, обрабатывают их 4 человека, если бы поток был 1500-2000 и обрабатывало их 100 человека ситуация думаю была бы аналогичной. Задержек с сервера никаких нету, все стабильно ничего не падает. Но бенчмарки я не делал, так что утверждения мои основываются на знании их протокола и знакомстве с сорцами. По протоколу пересылается только дифы, нужные данные кешируются как на клиенте так и на сервере, обращений в бд необходимый минимум, сервак простаивает практически всегда, так как большая часть работы с данными происходит на клиенте, сервер только отдает и принимает. Очень четко можно контролировать какие данные будут обновляться для конкретного пользователя, а значит лишнего он тоже не получит. Вот например взят трелло, там есть различные области видимости данных, доски, задачи, события пользователя и все такое. Так вот даже если на сайте куча пользователей онлайн, то каждому из них не так уж и много надо получать данных, и не нужно это делать с какой-то переодичностью, не считая пингов. В метеоре подобные подписки - это стандартный функционал, благодаря им можно сильно экономить на объеме пересылаемых данных.

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

> большими нагрузками
Хайлоад отдельная тема, я с ним не сталкивался, и не уверен, что метеор для этого подходит. Вот тут могу сказать, что он под определенные проекты, где нужна совместная работа, если этого нет в задачах лучше воспользоваться проверенными решениями, либо реализовать частичную логику на метеоре, например чатик, а частично на php|rails|.net|spring|etc, на том в чем будете уверены.

> Работа у тебя была проектная или где-то на постоянке используют такие хипстерские штуки, как Метеор ?
Да один проект, а метеор вообще неожиданно нашли. До этого уже делали пару раз подобное на ноде и сокет.ио, так я радугой кончал от метеора после них. На счет постоянно: за пару лет два проекта таких, еще один в планах, но хз когда на него будут деньги у заказчика.

> Что будешь делать дальше ?
Дальше пилить сайтики на рельсах и прокачивать свой скил в фронтэнде, мне почему-то именно он интересен. В серверной части обычно скучно, даже если и попадаются интересные задачи, по объему они обычно меньше, чем интересные задачи на фронте в каких-то проектах наоборот, не спорю. Но мне нравится делать отзывчивый интерфейс с которым будут непосредственно работать пользователи, а не заднюю часть, которую никто не видит. И вот метеор позволяет сконцентрироваться именно на клиентской части.

> Как пришел к тимлидерству ?
Пару лет работаю в компании. Хорошо знаком с нодом, хорошо знаком с фронтэндом, короче я фронтэндщик, а коллеги нет, а в метеоре только js. Так и пришел.

> Где почитать про функциональщину в JS ?
habrahabr.ru/post/224081/
habrahabr.ru/post/238171/
habrahabr.ru/post/230649/
habrahabr.ru/post/176233/
habrahabr.ru/post/154105/

То что нашел в избранном, а вообще кучу всего можно найти. И я не утверждаю нужно писать в чистом стиле, просто в последнее время увеличил скорость и уменьшил количество ошибок именно благодаря фп, субъективно, конечно. Именно поэтому и ангуляр мне не особо нравится, весь мир стремится к простоте кода, а они паттерны столетней давности захучили.
Аноним 21/11/14 Птн 00:28:34 #334 №408474 
>>408439
Недавно мне под убунтой понадобилось штук двадцать библиотек вручную перекомпилить, и вот нихуя не с первого раза они компилились, в гугле тоже нихуя, искал решения методом тыка, флаги, зависимости, которых тоже нет в репе.

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

Пару лет с рельсами работаю, под убунтой, дебианом и сусой никаких проблем в этом плане не наблюдал. Да бывают зависимости, но в ридми обычно все написано, либо куча ответов на so. А баги - они везде есть.
Аноним 21/11/14 Птн 01:13:47 #335 №408479 
>>408474
Двачую. Перепаковывал и распаковывал .deb пакеты и всячески пытался обмануть убунту. wkhtmltopdf, та еще херня, особенно их, сука, самописный скрипт сборки на пайтоне написанный.
Товарищ python-wsgi, пересобирал, т.к. обычный залинкован на старый пайтон. Охуительная просто вебразработка. Но в целом всё тихо
Аноним 21/11/14 Птн 01:26:38 #336 №408482 
>>408479
> wkhtmltopdf
> LGPL
> Охуительная просто вебразработка
Аноним 21/11/14 Птн 01:54:01 #337 №408487 
>>408470

>в нее можно передать любые данные, а также к ней подключаются хелперы
Ну охуеть киллер фича

>будет работать реактивно
Если ты имеешь в виду под реактивным обновлением не просто обновление дома при обновлении модели на клиенте, а автоматическую синхронизацию клиентской модели с сервером, то для этого есть отдельные библиотеки, для этого не нужно использовать специальный фреймворк.

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

Это так же как в ангуляре, ты полгода ебашишь приложение, а потом оказывается, что оно начало тормозить из-за того что слишком много данных. Эти проблемы может быть даже решаются как-то, но это занятие уже не относится к разработке приложения. Вместо того чтобы решать проблемы лучше их вообще избежать.
Аноним 21/11/14 Птн 02:23:58 #338 №408495 
>>408482
Ммм... Ты имеешь ввиду, что LGPL запрещает модификацию сорца? Но я его не трогаю. Да и пулриквест сделать всегда можно в их репу, но я в эту хуергу лезть не очень хочу.
Аноним 21/11/14 Птн 04:19:29 #339 №408509 
14165327694920.jpg
>>408470
Что скажешь за sails, express, koa? Гнойная параша, и не конкурент метеору, не стоит тратить время, а сразу учить метеор, ибо в будущем все будут на нем ебашить?
Аноним 21/11/14 Птн 08:03:29 #340 №408526 
>>408495
Я не особо секу в этих юридических вопросах, но LGPL обязывает по требованию предъявить код проекта, если в нем используется код под LGPL. Там есть всякие хитрости с линковками и способами взаимодействия, но крупные компании например в это говно априори не вникают, так как очень сомнительная лицензия.

Алсо, под просто GPL нужно предоставлять сорцы программы, которая находится на устройстве пользователя. И похуй платная она не платная. То есть на сервере GPL можно использовать, а вот LGPL сразу мимо.
Аноним 21/11/14 Птн 08:22:59 #341 №408528 
>>408487
Угу, всему есть альтернативы, я же не агитирую что на метеоре нужно делать все новые сайтики, просто если будет подходящий проект, ознакомься, очень порадуешься.

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

> Ну охуеть киллер фича
Киллер фича в том, что ты пишешь шаблоны как на сервере, а они работают на клиенте и работают заебись. Можешь забыть про всякие байдинги и выставление нужных классов через джиквери. Короче я знаком со многими шаблонизаторами, метеоровский прост для использования и работает заебись, подводных камней никаких не нашел, меня это сильно впечатлило.

>>408509
> express
Основные функции у него роутинг и встраивание препроцессоров. Любое middleware заебись подключается к стандартным нодовским классам (подключал к метеоровскому проекту алсо).
> sails
Годная вещь, особо на нем не разрабатывал, но то что они объединили кучу библиотек и дали им стандартизованный интерфейс очень круто, без сарказма. Плюс на сколько я понял у них есть несколько и своих решений типа ORM. Но до рельсов они очень сильно не дотягивают, так что и смысла использовать подобный подход на ноде я пока что не вижу.
> koa
Посмотрел на него, тот же экспресс, только не экспресс.

Короче метеор хорошо подходит под определенные проекты, сравнивать их можно, но не совсем корректно, по-моему. В будущем на нем все не будут ебашить, но определенный успех как и рельсы, думаю, ожидает метеор.
Аноним 21/11/14 Птн 09:03:25 #342 №408537 
Какие фреймворки и технологии нынче надо знать чтоб устроиться на работу веб-макакой? Ну там фронтенд и бэкенд чтоб мог писать. Ну я думаю вот HTML5 обязательно, а из JS что?
Аноним 21/11/14 Птн 09:27:44 #343 №408541 
>>408537
> вот HTML5 обязательно
Что такое HTML5?
Аноним 21/11/14 Птн 09:49:38 #344 №408550 
>>408541
гугол грит
HTML5 is a core technology markup language of the Internet used for structuring and presenting content for the World Wide Web.
а так хз нах нада
Аноним 21/11/14 Птн 11:59:51 #345 №408581 
>>404097
Почему-то тему закрыли, репостну сюда.
>>408477
Аноним 21/11/14 Птн 12:01:49 #346 №408583 
>>408470
Спасибо за подробные ответы и ссылки, добра тебе
Аноним 21/11/14 Птн 12:05:19 #347 №408586 
>>408463
Смотри, есть ли у них открытый API но скорей всего - нет. Если нет - открывай консоль разработчика в хроме и смотри, какие запросы посылаются при авторизации, при пересылке сообщений и т.п. Но врядли на этом далеко уедешь
яндекс карты Аноним 21/11/14 Птн 12:47:03 #348 №408600 
14165632232170.png
Господа, мне пришло письмо-рассылка с инет магазина,хочу как у них сделать, ява скрипт вообще толком не знаю

там ссылка- на нее тыкаешь, отрывается маленькое окошко с картой и кнопкой печати

я уже мозг взорвал как они это делают.при чем это работает только в веб версии письма, не через email клиент

<span class="js-extracted-address daria-action mail-message-map-link" data-action="map-up.showAddress" data-params="address=ул. Выборгская, 16, корп. 2">ул. Выборгская, 16, корп. <span class="mail-message-map-nobreak">2<span class="mail-message-map-link-icon icon"></span></span></span>


я правильно понимаю, что идет обращение к api яндекс карт?

Аноним 21/11/14 Птн 13:57:31 #349 №408620 
>>408600
Да. Найди туториал от яндекса, там вроде всё понятно и с примерами.
Аноним 21/11/14 Птн 17:11:21 #350 №408666 
Очередной вопрос по ангуляру. Пишу директиву, у которой в scope объявлен параметр, на который завязаны одновременно два элемента вида input. Таким образом, при изменении одного input, изменяется и второй. Вопрос вот в чем: нужно не давать изменяться второму input при введении некорректных значений в первый (и наоборот). Т.е., если я допустим ввожу текст в input1, то он появляется в input2. Но как только я начинаю вводить в input1 числа - обновление второго приостанавливается. Как это __грамотно__ (это - основное условие) сделать ?
Как вообще правильно обновлять элементы внутри директивы ? Как я уже сказал, я создаю в скоупе параметр и заявязываю его на элементы через ng-model. Но ведь можно, например, вешать события через element.children[0].on('change', function () { })
Аноним 21/11/14 Птн 17:36:36 #351 №408667 
>>408666
>666
лол
Ну да похуй.
Смотри. Забудь про element.children[0] и прочий жиквери. Для решения твоей задачи нужно две модели, два вотча и немного логики.
Аноним 21/11/14 Птн 17:43:17 #352 №408670 
>>408667
У меня эта переменная будет изменяться как с помощью двух input'ов, так и извне, из контроллера. Всё равно для каждого input заводить отдельную переменную, при условии, что большую часть времени они будут равны друг другу ?
Это еще при условии, что у моей директивы эта переменная будет задаваться с помощью ng-model и проходить всю эту еботню с $formatters, $render и $parsers.
Аноним 21/11/14 Птн 18:11:30 #353 №408679 
>>408537
бамп вопросу.
Аноним 21/11/14 Птн 18:15:16 #354 №408680 
>>408679
Идёшь на ХХ\Брейнстораж, ищешь вакансии и смотришь к ним требования
Аноним 21/11/14 Птн 18:16:26 #355 №408681 
14165829860120.jpg
Привет JSач-погромач. В общем суть такова: я никогда не работал в вебе, с JS тоже, но сейчас назрела необходимость запилить небольшую рисовалочку. Что от рисовалочки требуется: у меня есть около 20 шаблонов, чтобы их можно было кинуть на область рисования, вертеть, растягивать, перемещать. Все. Ну а потом, чтобы это дело можно было сохранить в PNG, например. Может быть где-нибудь уже лежат исходники подобного? Если нет, то посоветуй литературы человеку совсем не знакомому с JS, canvas, HTML5 и прочими веб свистоперделками. С меня нефть нихуя
Аноним 21/11/14 Птн 18:38:46 #356 №408692 
>>408670
http://jsfiddle.net/03bxer8r/ ?
Аноним 21/11/14 Птн 18:44:21 #357 №408694 
Битый час ебался с доками и туториалами, пока в одном из них таки соизволили написать, что после karma start надо в новом окне запустить karma run.
Аноним 21/11/14 Птн 18:45:24 #358 №408695 
>>408692
Спасибо. Немного не то, но попробую это решение, если ничего лучше не придумаю. Но на самом деле, качество решения мне очень важно, так как в задании джва условия: правильный код и отличная производительность при условии использования этой директивы множество раз на странице (а лишний $watch умноженный на количество директив создает дополнительную нагрузку)

Более подробное описание проблемы вот:
http://plnkr.co/edit/E5QJUHsAMBTlwUzO4L0V?p=preview
(писал для буржуев, но они тоже ничего толкового не говорят).
Аноним 21/11/14 Птн 19:05:31 #359 №408698 
>>408528
Виндобляди соснули с метеором? Или можно как то настроить разработку под вин?
Аноним 21/11/14 Птн 19:10:02 #360 №408699 
>>408698
Лучше сразу забудь. Ставь виртуалку или на худой конец - используй какой-нибудь Koding. Нет ничего хуже, чем проебаться с каким-нибудь пакетом и потом узнать, что он (или какой-нибудь из пакетов, от которого он зависит) не идет под виндой.
Кстати, палю годноту: jsfiddle для meteor'а -
http://meteorpad.com/
Аноним 21/11/14 Птн 19:14:04 #361 №408700 
>>408681
Бамп вопросу. Очень нужно.
Аноним 21/11/14 Птн 19:18:58 #362 №408701 
>>408699
Легко ли деплоить метеор апп-ки? Обычно все через package.json идет с запуском скриптов, а тут как?
И еще, посоветуй, как ты изучал метеор, как грамотно подойти к вопросу, чтоб зря время не проебывать, а нормально задрочить его.
стремящийся в нод жс
Аноним 21/11/14 Птн 19:23:11 #363 №408702 
>>405581
Проблема MVC (MV, MVVM) клиент фреймворков, в том что этот MVC нихуя не работает на клиенте. Структура данных на бекенде в 99% случаев отличается от структуры данных на клиенте - ведь на клиенте чаще всего ещё куча флагов и вспомогательных переменных типа className, collapsed?, которых само собой на бекенде в принципе быть не может. Зачем вообще какие-то модели на клиенте нужны? Но самое главное непонятно как код структурировать с этой грудой моделей.
Аноним 21/11/14 Птн 19:23:50 #364 №408703 
>>408701
Я с meteor не работал, просто проблемы с пакетами на винде присущи node.js вообще. Тут выше был анон, разбирающийся в вопросе, надеюсь, что он не ушел далеко. Самому было бы интересно послушать.
Аноним 21/11/14 Птн 19:33:13 #365 №408704 
Не понимаю, почему у метеора 20 тыщ звезд, а комьюнити кажется таким мизерным на фоне експресс. Да и по работе с метеор вообще редкость найти что-то. Как же быть, дрочить метеор, или занятся чем то устоявшимся, типа рельс.
Аноним 21/11/14 Птн 20:00:13 #366 №408709 
>>408701
Аналогично, когда командуешь meteor bundle, собирается папка с обычным нодовским приложением, скрипт запуска тоже там прилагается. Весь клиентский код аккуратно упаковывается в отдельную папочку в сжатом виде, статика из папки паблик вроде как где то рядом с серваком лежит не разбирался в этом вопросе, так как мое рабочее окружение в силу многих причин мало отличается от продакшена. Настраиваешь нджинкс, настраиваешь форевер, есть даже пакет github.com/arunoda/meteor-up , я правда им начал пользоваться когда был метеор 0.8.3 так что некоторые проблемы испытал, но в целом благодаря ему: деплою приложение одной командой в консольке, что-то типа недокапистраны, но вижу что в последнее время пакет развивается, так что возможно уже сейчас все стало лучше.

> посоветуй, как ты изучал метеор
Вот тут из меня хуевый советчик, мне его вручили, через две недели надо было прототип показать, сразу начал делать, в основном читал доку и пользовался предыдущим опытом, по непонятным вопросам лез в сорцы различных приложений. Есть куча полезных ресурсов на эту тему (github.com/ericdouglas/Meteor-Learning), есть книга, но после краткого обзора понял что мне она не особо нравится (ru.discovermeteor.com), еще конечно официальный гайд, и есть еще гайд на русском, который недавно на хабре публиковали, достаточно годный по-моему (github.com/ovcharik/meteor-getting-started), какие-то идеи я отсюда еще пиздил (github.com/oortcloud/atmosphere/tree/0.7.0)

>>408704
> Не понимаю, почему у метеора 20 тыщ звезд, а комьюнити кажется таким мизерным на фоне експресс.
Если только в этой стране, в пендостане комьюнити огромное, бложики, книги, ответы на со, пакеты, куча всего. По экспресс особо и пояснять то по моему не нужно, доки и пары примеров с плагинчиками более чем достаточно. А в россии, по-моему, даже на заглохнувший дерби чаще смотрят чем на метеор, может просто до наших долго доходит?

> Да и по работе с метеор вообще редкость найти что-то.
> Как же быть, дрочить метеор, или занятся чем то устоявшимся, типа рельс.
Я бы дрочил рельсы, и поглядывал на метеор, на твоем месте. Рельсы еще точно очень долго из моды не выйдут, а скорее их популярность будет только увеличиваться, но это не значит, что метеор пойдет в бездну после своего первого релиза, нет, думаю он тоже будет активно продвигаться в ряды разработчиков и набирать популярность по крайней мере надеюсь на это.
Аноним 21/11/14 Птн 20:01:48 #367 №408710 
>>408709
> meteor build

Лютый батхерт я словил, когда они все что можно переименовали и в конечном итоге я не смог мигрировать на 1.0
Аноним 21/11/14 Птн 20:22:15 #368 №408716 
>>408695
Кстати, нонче можно биндиться на свойства, пример:
http://plnkr.co/edit/ZH2DpOwq1PCKvEeKvAbP
Кака даже не вводится.
Аноним 21/11/14 Птн 20:24:34 #369 №408717 
>>408716
Вот ! Кажется это то, что нужно. Спасибо, почитаю про это побольше.
Аноним 22/11/14 Суб 01:38:21 #370 №408767 
Поясните нюфагу: на виртуальный сервер можно заходить по ssh, а на обычную хостинг-платформу только по ftp?
Аноним 22/11/14 Суб 02:32:59 #371 №408769 
>>408767
Что такое
> обычную хостинг-платформу
?
Аноним 22/11/14 Суб 02:37:24 #372 №408771 
>>408767
И скорей всего нет, я пару раз хостинги снимал, где твоего пользователя просто анально от всего ограждают, но дают возможность в своей папочке делать все что хочешь. Дают права к твоей бд и права к редактированию твоего nginx конфига, ну и разные другие нищтяки, для нестандартной настройки хватает. Конечно софт не поставишь, но вот локальный rvm там никто развернуть не мешал, только вроде как это нельзя было делать.
Аноним 22/11/14 Суб 14:01:58 #373 №408832 
>>408681
Бамп, вопрос еще актуален.
Аноним 22/11/14 Суб 14:54:07 #374 №408839 
>>408832
Так а в чем проблема у тебя? Ты в принципе не знаешь как это сделать или проблема именно с js?

Если с js то goo .gl/y5r0hg, хуева туча всего же есть, js сам по себе очень дружелюбен, если ты до этого писал хоть на чем нибудь. Канвас как канвас, события мышки как события мышки, ничего сверхъестественного. Хули ты такой ленивый то, я понять не могу?
Аноним 22/11/14 Суб 15:19:28 #375 №408842 
14166587680080.jpg
>JavaScript
>Язык программирования
Аноним 22/11/14 Суб 15:28:17 #376 №408844 
>>408842
Учи матчасть, может после этого хоть не таким зеленым будешь, а то даже определений не знаешь.
Аноним 22/11/14 Суб 15:35:12 #377 №408848 
>>408844
Глядите, хабрабыдло вылезло. Забыл rtfm сцуко, google it животне, афтар вбабруйск! Даже CoffeeScript более язык программирования чем эта ваша параша.
Аноним 22/11/14 Суб 15:45:14 #378 №408853 
Кто-нибудь работал со связкой w3rtc и метеором?
Хочу центральный координирующий сервер на метеоре и отваливающиеся от него в p2p куски.
Я наркоман/
Аноним 22/11/14 Суб 15:47:23 #379 №408857 
>>408853
> w3rtc
webrtc, конечно.
Аноним 22/11/14 Суб 17:58:00 #380 №408893 
>>408694
Нахуя ? Вроде запускаю karma start и всё работает. Я что-то упускаю ?
Аноним 22/11/14 Суб 20:45:08 #381 №408936 
Пацаны, к свойству объекта можно обращаться (и задавать его) так — object.property, и так — object['property']. Есть ли какая-то разница между этими вариантами?
Аноним 22/11/14 Суб 21:34:14 #382 №408950 
Метеор-кун, выходи на связь. У стремящегося есть вопросы.
Аноним 22/11/14 Суб 21:34:34 #383 №408951 
>>408936
По сути - никакой, но второй способ позволяет делать разные крутые штуки. Во-первых, хранить название проперти в переменной. Условный пример:

['name', 'address', 'age'].forEach(function (p) {
console.log(object[p]);
})

Во-вторых, название проперти может быть хитровыебанным: с тире, пробелом, одним лишь числом и т.п. В таком случае ты можешь получить его только вторым способом.
Аноним 22/11/14 Суб 22:36:24 #384 №408982 
Друзья, может замутим раковник в скайпе?
Аноним 22/11/14 Суб 23:11:22 #385 №409001 
>>408982
Оставляйте скайп желающие, добавлю в конфу.
Аноним 23/11/14 Вск 00:06:40 #386 №409031 
>>409001
javascript-jedi
Аноним 23/11/14 Вск 00:59:31 #387 №409048 
14166935716210.jpg
>>409001
>skype
Аноним 23/11/14 Вск 07:03:48 #388 №409118 
>>408951

Понятно, спасибо.
Аноним 23/11/14 Вск 11:21:00 #389 №409140 
>>408893
У тебя singleRun: true, а у меня был дефолтный false.
Аноним 23/11/14 Вск 11:33:41 #390 №409141 
>>409140
Нет, тоже false. Запускаю через start и он висит и автоматически прогоняет тесты при изменении файлов
Аноним 23/11/14 Вск 11:50:41 #391 №409146 
14167326419390.jpg
>>404097
Стоит ли комментировать все публичные функции? Автоматическая генерация документации - годнота?
Аноним 23/11/14 Вск 12:23:12 #392 №409161 
14167345927190.jpg
Бля, подкиньте идей, что можно написать чисто для портфолио? На JS, кажется уже написано все что могло быть написано.
Аноним 23/11/14 Вск 12:24:27 #393 №409163 DELETED
>>409161
Кластер метапарадигм.
Аноним 23/11/14 Вск 12:30:04 #394 №409165 
>>409161
Напиши свой язык программирования на js.
Аноним 23/11/14 Вск 13:02:31 #395 №409175 
Есть одна сторонняя библиотека, которая используется только на одной странице, и жс код, использующий эту библиотеку, который и рисует страницу. Код, понятно, должен быть в директиве, а ссылку на библиотеку куда по феншую пихать? В хтмл - инкапсуляция страдает, в директиву - их возможно будет несколько, все используют одну библиотеку и рисуют разные части страницы.
>>409141
Ну значит autoWatch: true
Аноним 23/11/14 Вск 13:20:52 #396 №409191 
>>408950
Я тут, не могу каждый день проверять тред, особенно на выходных, так что задавай. В любом случае отвечу, но может не сразу.
Аноним 23/11/14 Вск 14:08:17 #397 №409214 
>>409163
>>409165
Хуйня уровня laba_3
>>409161
Любой законченный продукт.
Аноним 23/11/14 Вск 14:21:16 #398 №409222 
14167416769160.png
Открывающую скобку рекомендуется ставить на текущей строке, потому что интерпретатор может ёбнуть в каком-нибудь месте точку с запятой. Вот так форматировать код тоже нельзя по этой самой причине?
Аноним 23/11/14 Вск 14:22:13 #399 №409223 
>>409222
Можно.
Аноним 23/11/14 Вск 15:28:09 #400 №409254 
>>409222
>Открывающую скобку рекомендуется ставить на текущей строке
Ноуп.
Аноним 23/11/14 Вск 15:50:33 #401 №409262 
>>409254
Ты опять выходишь на связь, сишарпер ?
Аноним 23/11/14 Вск 15:58:50 #402 №409270 
Сап, нодокуны, у меня к вам вопрос такой: как в монгодб можно выгрузить данные из нескольких документов? Допустим, у меня есть блог, в ней есть пользователи, у пользователей есть много постов, у постов много комментов. Пользователи - один документ, посты и комменты - другой, могу я как-то выгрузить коллекцию вида:

пост: {
текст: "$текст",
заголовок: "$заголовок"
пользователь: {
//данные пользователя
}
}

вроде, нашел, как это сделать в могузе, хочу знать, как это сделать без него, реквестирую знатоков помочь мне.
Аноним 23/11/14 Вск 16:16:17 #403 №409279 
>>409270
О-хо-хо, эмуляция sql запросов на бекэнде? Используй реляционную БД для реляционных данных. Если до тебя сделали велосипед, реализующий это в монго, используй его, блядь! Он едет? Зачем ты пытаешься его починить?
Аноним 23/11/14 Вск 16:41:02 #404 №409291 
14167500628540.png
>>409270
Попробуй aggregation, если у тебя вся эта ебала хранится в одной коллекции.Дал бы по ебалу за такую DB Model
Если нет: придется перебирать все коллекции для формирования указанного документа.
Аноним 23/11/14 Вск 18:04:09 #405 №409326 
>>409270
В глаза долбишься что ли?
http://mongoosejs.com/docs/populate.html
Аноним 23/11/14 Вск 18:11:54 #406 №409328 
>>409270
Ну и если тебе лень лезть в сорцы мангуста
http://stackoverflow.com/a/22739813
Что вообще за проблемы я не понимат, какого хера это хоть какие-то вопросы вызывает?
Аноним 23/11/14 Вск 18:12:04 #407 №409329 
Блять, я с этими тестами седым стану. Ничего нихуя не работает и хуй поймешь почему. Сейчас вот директива не компилируется через $compile(element)(scope). Вроде все зависимости подключаю правильно, но ничего не работает.
Есть какой-нибудь FAQ для нубов по самым распространённым ошибкам ?
Аноним 23/11/14 Вск 18:29:37 #408 №409335 
>>409279
Самый годный совет
Аноним 23/11/14 Вск 20:33:56 #409 №409392 
>>409291
2 докумена: юзеры и посты. Написал же.
Аноним 23/11/14 Вск 20:34:39 #410 №409394 
>>409326
Я и написал, что на монгузе нашел, хочу без монгуза посмотреть.
Аноним 23/11/14 Вск 20:47:34 #411 №409395 
>>409392
>2 докумена: юзеры и посты. Написал же.
Две коллекции, ты хотел сказать?
Ну значит тебе сюда: >>409328
Аноним 23/11/14 Вск 20:54:15 #412 №409397 
>>409328
Если бы ты прочитал внимательнее, то понял бы, что мне нужно объединить 2 РАЗНЫЕ коллекции, внутри одной коллекции разобраться с данными я могу, как хочу.
Аноним 23/11/14 Вск 20:59:12 #413 №409398 
>>409397
>>409328
Извиняюсь, я спустился на комменты ниже. А по поводу того, что ты скинул: желаю тебе удачи, когда у тебя упадет сервер нахуй, когда ты, захотев выгрузить большое количество данных, будешь делать запрос ДЛЯ БЛЯТЬ КАЖДОГО ОБЪЕКТА В ДОКУМЕНТЕ. Не знаю, как в ноде, но на рельсах за такое ебут в жопу.
sageАноним 23/11/14 Вск 20:59:45 #414 №409400 
>>409397
Если бы научился называть вещи своими именами, то тебе бы может и помогли.
Охуеть, блядь, посты у него один документ, авторы - другой. RTFM, быстро и решительно.
Аноним 23/11/14 Вск 21:03:34 #415 №409402 
>>409400
Можете для человека незнакомого с монгой вообще объяснить простыми словами, что этот >>409397 делает не так и как надо в монге ?
Аноним 23/11/14 Вск 21:06:57 #416 №409404 
>>409400
Ну-ка, расскажи, как надо. Нужно, чтоб посты были внутри юзеров? Охуеть, блять, просто, гений нахуй.
Аноним 23/11/14 Вск 21:10:51 #417 №409406 
>>404531
Этому две шпалы.

>>404520
Пиши-пиши свои вложенные коллбэки. И спекитэсты проебать не забудь.
Аноним 23/11/14 Вск 21:11:49 #418 №409407 
>>409402
Это надо делать не в монге.
Аноним 23/11/14 Вск 21:13:10 #419 №409408 
>>409407
Делал в монге просто потому, что хотел попробовать.
Аноним 23/11/14 Вск 21:33:33 #420 №409415 
>>409407
Я, в принципе, так и думал, но там выше говорят, КАК НАДО В МОНГЕ и поэтому захотелось понять: можно ли там такое, как, зачем и почему.
Аноним 23/11/14 Вск 23:56:27 #421 №409493 
Хипсторы, поясните за Ext JS. Что за зверь такой? Почему он платный?
Аноним 24/11/14 Пнд 00:15:30 #422 №409500 
>>409415
mongoid да и актив рекорд в рельсах именно так делает, собирает сначала данные с основной коллекции, потом на строне сервера собирает айдишники зависимой моделей (для связи has_one), либо свой айдишники для обратного отношения, забирает из связанных отношений (таблиц или коллекций в монге) данные и на стороне сервера фасует их. Но в монге например при сохранении нету транзакций, а значит и принципы acid не соблюдаются, так что монга не подходит для реляционных отношений, и выборки пиздатые не получится делать на основе джоинов. Мангуст точно также работает.
Аноним 24/11/14 Пнд 00:16:06 #423 №409503 
>>409493
Максимум энтрепрайзные окошки как в виндусе.
Аноним 24/11/14 Пнд 00:31:02 #424 №409510 
>>409500
Спасибо, так понятно более или менее
Аноним 24/11/14 Пнд 00:31:52 #425 №409511 
Нигде не могу найти pdf книжки из шапки:
Dr. Axel Rauschmayer - "Speaking JavaScript: An In-Depth Guide for Programmers"
Неужели покупать? Очень хочется почитать что-то годное на английском. Или может есть другие аналоги в свободном доступе?
Аноним 24/11/14 Пнд 00:33:10 #426 №409513 
>>409503
Загуглил, и правда какая-то тоска.
Аноним 24/11/14 Пнд 00:49:47 #427 №409518 
>>409511
>Dr. Axel Rauschmayer - "Speaking JavaScript: An In-Depth Guide for Programmers"
>
3 секунды в гугле
sageАноним 24/11/14 Пнд 00:51:09 #428 №409519 
>>409518
http://rutracker.org/forum/viewtopic.php?t=4701859
Аноним 24/11/14 Пнд 01:03:02 #429 №409520 
>>409519
Благодарю
Аноним 24/11/14 Пнд 01:19:58 #430 №409527 
14167811988430.jpg
>>409519
>460 страниц
Охуеть просто.
Что он там блядь расписывал?
Историю разработки JS вплоть до нулевого коммита чтоле, сука?
Что он там блядь уложил в 460 страниц? Я хуею просто, это пиздец.
В каждой современной книге обязательно овер 300 страниц из которых полезного материала 15-20% процентов, блядь, который приходится затрачивая свое время выдрачивать из книги. Ну нахуя, нахуя они льют столько воды, когда хватило бы одного простого reference of JavaScript?
Или там художественное повествование о путешествии юного JS в мире быдлокодеров сука? Дайте по ебалу этой книжкой тому, кто её писал, это пиздос.

Сейчас пойду зашиваться.
Аноним 24/11/14 Пнд 10:58:02 #431 №409574 
>>404097
Анон, есть такие проблемы, с голым JS я как-то разобрался, благо литературы по нему дофига, но с этим далеко не уедешь , как только начинаю копать глубже, начинается херь, если по jQuery что то есть, то по фреймворкам вроде angular, backbone инфы вообще практически нет, собственно изучение их - это находишь справочник и... во общем это запутывает еще больше, может я что-то неправильно делаю?

Я в прошлый раз просидел несколько дней, проебался - ничего не понял, в итоге пару недель не мог подойти к компьютеру.
Аноним 24/11/14 Пнд 11:03:21 #432 №409576 
>>409574
Конечно делаешь что-то не так, учишь ёбаный JS, не что бы осилить какой-то нормальный язык, ты решил изучаться строение человека на примере двухголовой камболы.
Аноним 24/11/14 Пнд 11:16:10 #433 №409577 
14168169701700.jpg
Typescript или Coffeescript?
Аноним 24/11/14 Пнд 11:29:54 #434 №409578 
14168177941500.jpg
Или Purescript?
Аноним 24/11/14 Пнд 11:30:37 #435 №409579 
>>409574
Ищи туториалы. Справочники нужны, когда ты уже понял самую суть и тебе нужно узнать, как делается конкретная вещь. Касательно ангуляра - бесплатный видео курс от codeschool - самое то. Там и другие бесплатные курсы есть, я думаю, они не хуже.
Аноним 24/11/14 Пнд 11:34:42 #436 №409581 
>>409576
Суть в быстром освоении языка и побега в лучшее место с того ада где я живу.

Js предполагает(точнее предполагал) самый быстрый результат.

Да и знания в программировании после года работы на том же джава скрипте будут достаточны, что бы я мог выбрать то - что мне нравится.

Если можешь что то посоветовать лучше - я буду только рад.
Аноним 24/11/14 Пнд 12:06:41 #437 №409587 
>>409576
Как же я с вас теку, хейтеры.
Аноним 24/11/14 Пнд 12:27:04 #438 №409593 
>>409577
>>409578
LiveScript /thread :3
Аноним 24/11/14 Пнд 15:02:47 #439 №409623 
>>409175
бамп
Аноним 24/11/14 Пнд 15:08:13 #440 №409626 
>>409574
Про backbone ты не прав, там всега 2000 строк кода, причём с подробными комментариями. Берёшь и читаешь.
https://github.com/jashkenas/backbone/blob/master/backbone.js
Аноним 24/11/14 Пнд 15:16:05 #441 №409631 
>>409175
В HTML. Такой подход используется в angular-ui.
Аноним 25/11/14 Втр 14:17:41 #442 №409988 
Я не понял, почему тред скатился, а?
Аноним 25/11/14 Втр 19:17:51 #443 №410047 
>>409988
Двачую, где все js-пацаны?
Предлагаю обсудить животрепещущю тему, вытеснит ли нода rails в ближайшие 3 года?
Аноним 25/11/14 Втр 19:20:50 #444 №410050 
>>410047
Есть какие-то примеры сайтов, написанных на ноде ? Давно задавался этим вопросом, но ничего не нашел тогда. Сейчас ситуация хоть сдвинулась на шаг ?
На ум приходит только Ghost.
Аноним 25/11/14 Втр 20:20:43 #445 №410071 
>>410050
http://expressjs.com/resources/applications.html

Раньше этот список было длиннее правда.
Аноним 25/11/14 Втр 23:12:10 #446 №410167 
>>410050
Reddit, не?
Аноним 25/11/14 Втр 23:16:36 #447 №410169 
>>410167
Точно нет. Не помню, на чем он был раньше, но сейчас - на питоне: https://github.com/reddit/reddit
>>410071
Спасибо, интересный список. А почему именно express ? Использование ноды подразумевает использование этого фреймворка ? Альтернатив нет вообще ?
Аноним 25/11/14 Втр 23:48:57 #448 №410187 
>>410169
На лиспе вроде был раньше.
Экспресс в ноде как рельсы в руби, тупо дефолт, на которым многие останавливаются. Есть еще hapi.js и куча других построенных на экспрессе. Новый сайт нпм вот хапи пилят.
Аноним 25/11/14 Втр 23:50:14 #449 №410189 
>>410187
>на хапи пилят
пофиксил себя а то получается что нпм пилит хапи
Аноним 26/11/14 Срд 01:43:15 #450 №410258 
trello, по крайней мере был на нем и монге сделан, сейчас может уже все поменялось, хотя не думаю
Аноним 26/11/14 Срд 01:54:50 #451 №410267 
>>410187
Чому ты пиздишь? Какой "как рельсы в руби"? Никогда не было задач писать рест апи на ноде, только с сокетами работаем, либо с кучей всего другого, когда делаем чисто серверное приложение, експресс даже если и используется, то выполняет лишь малую часть функциональности. Есть же рельсы для охуенного и удобного реста. Но например нету годной реализации каких то функций в рельсах, либо есть очень годные реализации в ноде тот же фантом, берем редис, берем еще какую нибудь хуету и соединяем эти приложения. Какой смысл вообще делать что-то на связке node и express, если только учебные проекты иначе себе дороже выйдет.
sageАноним 26/11/14 Срд 02:40:15 #452 №410278 
>>410267
Пиздец, ты дальше-то читал?
>тупо дефолт, на которым многие останавливаются
Имеется в виду по популярности.
Чел ищет веб-разработку на руби, первым натыкается на рельсы, на ноде - на экспресс.
надо было использовать "натыкаются первыми" вместо "останавливаются"
>смысл вообще делать что-то на связке node и express, если только учебные проекты иначе
ясно
Аноним 26/11/14 Срд 02:42:30 #453 №410279 
>>410278
Cажа приебалась
Аноним 26/11/14 Срд 10:07:14 #454 №410302 
>>404295
Прогроммист официального сайта школы №113 детектид. PHP форева, Ленин, партия, комсомол!
Аноним 26/11/14 Срд 10:23:04 #455 №410305 
>>410267
Два чаю тебе. Недавно попытался API запилить на Loopback'е(который на том же самом экспрессе и сделан) - думал щас "сяду и поеду", где всё само - дошёл только до тестов и уже приехали, в процессе изучения issues выяснилось, что сами разработчики ещё не определились с базовым функционалом и зачем-то хардкодят какие-то готовые модели типа User и т.п., что нихуя не добавляет удобств. Сыро, короче говоря.

Мимо-рельсобог
Аноним 26/11/14 Срд 11:36:36 #456 №410325 
>>410278
Я по себе сужу просто, с нодом впервые столкнулся, когда делал сервер для одной игрушки. Надо было побыстрому, в течение одной недели захуячить прототип, поэтому и вязи нод. Все взаимодействие с клиентами было через веб сокеты.

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

В третий раз, было знакомство с метеором.

В четвертый на ноде писали ботов, которые вызываются через рельсовое приложение. Опять очереди и редис для взаимодействия, пользователь к этим ботам только косвенно может обращаться, то есть никакого экспресса и сокетов.

---

И так как мне в принципе нравится нод, я пару раз делал на нем сайтики для своих знакомых и по учебе какие-то проекты. Вот там да я использовал экспресс, но лишь для того чтобы познакомится лучше с нодом и js в целом. Но для работы это вообще неудачный инструмент, одна только асинхронность чего стоит. Если там нужно отобразить пару страничек и чатик захуячить, то да безусловно нод теперь уже метеор, где бы такая задача не возникла.

---

> веб-разработку на руби, первым натыкается на рельсы
> на ноде - на экспресс
Пиздец, ты рельсы с экспрессом сравниваешь.
Аноним 26/11/14 Срд 11:40:45 #457 №410328 
>>410305
Посмотри на sails, сам я не пользовался, но выглядит приемлемо, конечно, далеко не рельсы, но свои нищтяки есть.

Вообще есть тут кто пользовался? Какие ощущения?
Аноним 26/11/14 Срд 11:44:49 #458 №410330 
>>410278
> Пиздец, ты дальше-то читал?
Опять затупил, короче я про то, что рест приложения на ноде делать смысла особого не вижу. Есть другие, более подходящие для этого инструменты.
Аноним 26/11/14 Срд 14:22:04 #459 №410381 
>>410328
Олсо, про локомотив скажите что-нибудь. Ниразу не видел вакансий, где требуется не только знание ноды, но и определенного фреймворка и вот недавно где-то увидел именно локомотив.
Аноним 26/11/14 Срд 15:36:43 #460 №410396 
>>410267
>Никогда не было задач писать рест апи на ноде
Ну раз у тебя не было, то и у других не должно быть.

>Есть же рельсы для охуенного и удобного реста. Но например нету годной реализации каких то функций
Поэтому мы напердолим максимум разных технологий. Тут рельсы, там нода, сям джавы можно добавить, ну вдруг типы понадобятся. А часть бэкенда на с++ напишем, потому что Ивану Петровичу так удобнее.

Чем рельсы лучше для rest api? Скафолды быстрее генерируются?
Аноним 26/11/14 Срд 16:49:23 #461 №410420 
>>409581
удачи тебе, приятель.

сам такой же
Аноним 26/11/14 Срд 18:10:10 #462 №410436 
>>410396
Угу, еще большое сообщество, куча решений для всего, тесты из коробки, общая продуманость всего и прочее. Я считаю рельсы лучшим фулстек веб фреймворком на сегодняшний момент, поэтому для задач типа "зделать сайтик с формачками и всей хуйней" он подходит лучше, не буду спорить если не согласишься, зачем мне холивар. Но и в рельсах есть вещи, которые не очень удобно делать, поэтому архитектура обычно только ими в каких-то сложных приложениях у нас не ограничивается.

Если выбирать между нодом и рельсами, то все будет зависеть от поставленной задачи, а где-то и вправду лучше какая-нибудь скала или даже плюсы подходят.
Аноним 26/11/14 Срд 19:29:56 #463 №410463 
Есть задача лаба: на хтмл страничке есть пара полей для ввода данных и кнопка, по нажатию которой должны быть обработаны эти данные скриптом и некоторые результаты должны быть выведены на экран. Можно ли это сделать одним хтмл файликом и можете ли подкинуть релевантные примеры? Те, которые нашел, предлагают разбивать на два файла, типа одна страничка - хтмл, вторая форм хендлер, но конкретно в моей лабе это будет выглядеть ненужным усложнением.
Аноним 26/11/14 Срд 19:33:48 #464 №410465 
>>410463
Прямо в HTML пишешь тег <script> и внутри него пишешь код. Примеры слишком простые, что бы их искали за тебя. Иди на learn.javascript.ru и наверняка уроку к третьему будешь всё это уметь.
Аноним 26/11/14 Срд 19:50:08 #465 №410467 
>>410465
Можешь тогда посмотреть более конкретный пример и подсказать, что исправить?
http://pastebin.com/zPZHbANd
Что нужно подправить в форме, чтобы после отработки run() никуда не перенаправляло, ничего не обновлялось и был просто показан результат работы?
Аноним 26/11/14 Срд 20:05:09 #466 №410476 
>>410467
Хм блядь, оказывается так нельзя и нужно использовать AJAX. Ладно, спасибо мне.
Аноним 26/11/14 Срд 20:44:53 #467 №410490 
>>410476
Поменяй тип кнопки с submit на button и отправляться не будет.
Аноним 26/11/14 Срд 20:48:41 #468 №410499 
>>410476
>так нельзя и нужно использовать AJAX
ебанулся чтоли, какой аякс
http://jsfiddle.net/5w9yhjLa/
Аноним 26/11/14 Срд 21:22:33 #469 №410518 
>>410499
http://jsfiddle.net/5w9yhjLa/1/
поправил за тобой, ато производительность страдает
Аноним 27/11/14 Чтв 00:02:19 #470 №410571 
Сап, недавно решил, что стезя серьезного бородатого дяди мне пока не грозит и решил податься в веб. Форнт- бек-енд, вот это все. Диллема вот в чем, в любом проекте и любой вакансии из мною просмотренных вываливают ну просто дохуя требований, начиная от рисования уровня Пикассо и заканчивая знанием всех ну или доброй половины фреймворков. А их дохуя, только ленивый еще из CSS не сделал полноценный блядь язык требущий препроцессор. Я человек в этом деле новый, до этого штудировал джаву и поэтому хочу спросить у местного анона. HR'ы просто пихают что не попадя даже в вакансии джуниоров и мне с моими скромными HTML5, CSS3, JS, jQuery не стесняться или действительно на такие работы нужен просто огромный багаж знаний и опыта и мне закрываться на год в комнате с учебниками? Живу не в СНГ. Спасибо за помощь.
Аноним 27/11/14 Чтв 00:50:47 #471 №410595 
>>410571
Да просто спамь во все конторы, где ЗП опыт 1-3 года и ЗП в разумных пределах. Они вышлют тебе ТЗ, сделаешь - молодец, не сделаешь - будешь знать, что нужно подучить, чтобы сделать. Все просто. Я так с нулевым опытом получил работу.
Аноним 27/11/14 Чтв 00:53:19 #472 №410596 
Handlebars или twig.js ?
Аноним 27/11/14 Чтв 00:54:38 #473 №410599 
Час назад начал делать проект на метеоре. Уже чувствую, как отрастает борода.
Аноним 27/11/14 Чтв 00:56:50 #474 №410602 
>>410595
Влад?
Аноним 27/11/14 Чтв 00:57:12 #475 №410604 
>>410599
Штаны подворачиваются?
Аноним 27/11/14 Чтв 01:21:26 #476 №410612 
Пацаны, вопрос по Джейквери, ответа на который так и не получилось найти, допустим, есть селектор, закешированный в переменную:

var foo = $('.bar');

Допустим, я хочу добавить к этому селектору добавить еще один класс, чтобы было $('.bar .barson'), это можно как-то сделать или нужно заново пересоздавать объект с уже новым селектором?
Аноним 27/11/14 Чтв 01:41:13 #477 №410615 
>>410612
addClass
Аноним 27/11/14 Чтв 02:09:43 #478 №410619 
>>410596
но есть же куча крутых штук, типа jade, haml, slim - дохуя их, но в контексте нода однозначно jade
Аноним 27/11/14 Чтв 02:11:43 #479 №410620 
>>410612
думаю придется пересоздать, но еще можно юзать filter
Аноним 27/11/14 Чтв 10:21:29 #480 №410664 
>>410595
Задрачивал ангуляр последние пол года, в какой-то момент решил, что готов и выслал резюме к ребятам, к которым хотел устроиться. Они мне прислали тестовое задание, от которого я уже неделю засыпаю в кровати полной слёз. Таким дном я себя давно не ощущал.
Аноним 27/11/14 Чтв 12:33:54 #481 №410700 
14170808348850.jpg
Помогите нубу понять замыкания, плокс.
Почему вот это http://jsfiddle.net/vnkuZ/ работает, а вот это http://jsfiddle.net/7s5mb8wv/1/ - нет?
Аноним 27/11/14 Чтв 12:37:04 #482 №410702 
>>410620
Это же тебе не lazy-load, элементы уже выбраны в момент создания переменной, создавай новый селектор.
Аноним 27/11/14 Чтв 12:37:32 #483 №410703 
>>410612
>>410702
Аноним 27/11/14 Чтв 12:40:08 #484 №410707 
>>410700
Так работает. http://jsfiddle.net/7s5mb8wv/2/
В нерабочем варианте после вызова makeSize(12) возвращается undefined, а должен коллбек. Object.bind делать обертки на лету.
Аноним 27/11/14 Чтв 12:43:16 #485 №410709 
>>410700
Тут не в замыканиях дело, а в том, что onclick должен быть равен функции, а не результату ее выполнения.

document.getElementById('size-12').onclick = size12;
Здесь ты onclick приравниваешь к функции, когда click происходит, эта функция вызывается.

document.getElementById('size-12').onclick = makeSizer(12);
Здесь ты вызываешь makeSizer, а результат выполнения функции присваиваешь onclicke'у.
Аноним 27/11/14 Чтв 12:47:03 #486 №410712 
>>410612
$('.bar', foo)
foo.find('.bar')
Аноним 27/11/14 Чтв 12:52:19 #487 №410713 
>>410664
>Задрачивал
Книжки читал небось? Пиши код, блядь! Каждый день!
Аноним 27/11/14 Чтв 12:57:22 #488 №410715 
>>410713
Я и писал. Но проблема в том, что самому сложно наткнуться на какие-то вещи, которые требуются в команде. Условно говоря, не научишься писать хайлоад проекты, когда у тебя твой домашний проект развернут на локалхосте и посещаемость у него - 1 человек.
Больших опенсорсных проектов на ангуляре, где можно было бы поучиться, я не нашёл.
Аноним 27/11/14 Чтв 13:00:29 #489 №410716 
>>410707
>>410709
Спасибо, с этим вроде все понятно. Еще вопрос - правильно ли я понимаю, что замыкание в общем случае - это когда функция находится внутри другой функции и наружная функция при обращении к ней возвращает не результат, а внутреннюю функцию?
Не бейте сильно. Вчера пол вечера курил разные статьи, но так и не понял зачем это нужно, кроме того, чтобы ограничивать видимость переменных.
Аноним 27/11/14 Чтв 13:09:57 #490 №410721 
>>410716
http://pastebin.com/74X5LRgR

Пускай макака горит в аду со своим спамлистом
Аноним 27/11/14 Чтв 13:14:56 #491 №410724 
>>410713
Так и должно быть. У многих людей, ходящих по собеседованиям, цель не устроиться на работу (они знают, что их не возьмут), а научиться чему-нибудь, узнать реальные задачи. Одно собеседование в большую компанию может стоить месяца изучения учебников в рафинированных условиях.
Аноним 27/11/14 Чтв 13:17:21 #492 №410725 
>>410724
Лол, ну да, я узнал задачу, только не знаю, как её решать. Гуглю каждый день, читаю исходники ангуляра, ищу примеры, но продвижения практически нет
Аноним 27/11/14 Чтв 13:19:48 #493 №410726 
>>410716
Нет, то, что ты описал - это partial application, наверное.
Замыкание - это не про функции, а про переменные (просто в js переменная может быть равна функции).
Посмотрел по ссылке, да, у тебя там замыкание.
В реальной жизни редко сталкивался, по-моему, оно нужно только для того, чтобы запутывать, и чтобы спрашивать про это на собеседованиях.
Аноним 27/11/14 Чтв 13:24:14 #494 №410728 
>>410716
Короче, для чего нужны замыкания.
Глобальные переменные использовать плохо. Поэтому создаем функцию, которая оборачивает весь твой код, и создаем там переменные, во всех функциях эти переменные "замкнутся".
Аноним 27/11/14 Чтв 13:31:44 #495 №410730 
>>410728
Боюсь, что я тебя только запутаю. Я сам когда пишу код, не думаю о замыканиях, только об области видимости переменных, и тогда все ясно.
Аноним 27/11/14 Чтв 15:13:30 #496 №410762 
>>410721
>>410726
>>410730
Спасибо вам огромное, анончики.
Аноним 27/11/14 Чтв 15:18:42 #497 №410763 
>>410726
Постоянно сталкиваюсь с замыканиями. Эффективный прием, проблем нет.
Аноним 27/11/14 Чтв 16:39:25 #498 №410808 
>>410763
Привык писать на js практически в функциональном стиле, нет есть конечно классы и состояния, но года типа функция через функцию функцию возвращает очень дохуя, тоже проблем нет.
Аноним 27/11/14 Чтв 16:43:54 #499 №410809 
>>410725
>я узнал задачу
Задачу в студию.
Аноним 27/11/14 Чтв 16:50:50 #500 №410811 
>>410809
Не хочу ололо деанона от работодателя или его подчиненных.
Убрал бы детали и описал бы немного по другому, но там вся суть как раз в деталях.
Аноним 27/11/14 Чтв 16:54:05 #501 №410812 
>>410809
Могу свое озвучить, не так давно ходил на собеседование.

Попросили сделать систему комментариев (только фронт-энд).
Эта система должна уметь создавать вложенные ответы, markdown разметку, а остальное по стандарту по сути, там круд, авторизация, таймштампы, пользователи вся хуйня. Нужно было сделать без всяких фреймворков, онли pure js.
Аноним 27/11/14 Чтв 17:01:57 #502 №410817 
>>410811
Пошёл нахуй тогда. Кому ты блядь нужен, даун?

>>410812
>без всяких фреймворков, онли pure js.
Ну не, за такие задачи по губам проводят. С тем же успехом можно заставить писать эту хуйню на листочке вместо компьютера.
Аноним 27/11/14 Чтв 17:04:33 #503 №410819 
>>410817
На собеседовании они увидели что я владею различными фреймворками, по крайней мере те что в требованиях были. Показа несколько проектов и прочее. Интересно стало именно то как буду с чистым js работать, как архитектуру выстрою, как это потом поддерживать можно будет, как тесты ко всей этой хуете прикрутятся и прочее. По губам можно проводить за задания типа сделать какую то очень типичною задачу для фреймворкнейм.
Аноним 27/11/14 Чтв 17:12:47 #504 №410825 
>>410819
Какой смысл "с чистым js работать", если в работе будешь всегда фреймворки использовать?

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

Предложить работать с DOM на чистом джс, без декларативных ангуляров и даже без жквери - равносильно плевку в лицо.
Аноним 27/11/14 Чтв 17:15:17 #505 №410829 
>>410812
>Могу свое озвучить, не так давно ходил на собеседование
>комменты
>разметка
>авторизация
>pure javascript
Лол. Они тебе хоть заплатили за полную разработку фронт-энджа?
Авторизацию на фронт-энде с CRUD - какой-то пиздеж.
Аноним 27/11/14 Чтв 17:17:27 #506 №410831 
>>410825
Закон дырявых абстракций объясняет, зачем это нужно. Если возникнут какие-то проблемы с фреймворком и человек не знает, как устроен сам JS, то он нихуя сделать не сможет.
Аноним 27/11/14 Чтв 17:20:15 #507 №410832 
>>410831
Например, как Angular делает inject по имени аргумента функции? Object.toString
Аноним 27/11/14 Чтв 17:22:29 #508 №410835 
>>410832
В разработке достаточно знать что это нахуй не нужный выебон, который ломается при минификации, поэтому приходится делать хуйню вроде
['$scope', function($scope){}]
Аноним 27/11/14 Чтв 17:27:05 #509 №410838 
>>410825
> даже без жквери
Нахуй надо жквери для тестового задания, где не требуется поддержка IE?

> Само наличие в жс тонны этих фреймворков и прочих костылей уже говорит о том, какая на нём без них получается архитектура и поддержка.
Это еще говорит и о том, что многие джаваскриптизеры даже сам js освоить не могут. jQuery-программисты.
Аноним 27/11/14 Чтв 17:28:09 #510 №410839 
>>410835
Окей, тут понятно. А вот two-way-binding? ужасные грязные циклы
>>410838
Ты драматизируешь.
Аноним 27/11/14 Чтв 17:33:46 #511 №410841 
>>410839
>two-way-binding
А что тувейбиндинг? Надо радоваться, что кто-то эту парашу сделал для тебя, и не надо самому погружаться в костыли.

>>410838
>поддержка IE
>jQuery-программисты.
Ты в который раз подтверждаешь убогость джяваскрипта.
Аноним 27/11/14 Чтв 17:41:07 #512 №410843 
>>410841
>убогость джяваскриптизеров и не осиливших.
Пофиксил тебя.
Аноним 27/11/14 Чтв 17:41:34 #513 №410844 
>>410835
Да как по мне ангуляр это сборище ковна и костылей
Аноним 27/11/14 Чтв 17:46:02 #514 №410846 
>>410829
Меня не просили сервер писать, сказали делай как хочешь, можно хоть LocalStorage, хоть куки, хоть просто в памяти хранить, хоть что короче использовать, всем было похуй. Авторизация, например, условно ввод нужного мыла. Суть задания не в этом. И зачем платить за это? И я начал делать, а потом меня обломало, так как офер предложили не прошлой работе.
Аноним 27/11/14 Чтв 18:00:27 #515 №410851 
>>410846
Они ебанутые просто. Или тебя прост за лоха приняли, судя по портфолио типа "владею angularyeomanrestatomemberamber+33frameworks)))."
Аноним 27/11/14 Чтв 18:25:02 #516 №410857 
Перекат, бандиты https://2ch.hk/pr/res/410856.html
Аноним 27/11/14 Чтв 20:51:38 #517 №410922 
>>410762
Замыкание, это когда функция всегда имеет доступ к контексту, в котором определена.То есть если ты объявил huita() и рядом был var yoba, ты сможешь использовать yoba в huita(), где бы не вызывалсь huita() и все будет работать. Знаю, объяснил хуево, сам пока не написал, не понял.
Аноним 29/11/14 Суб 00:07:26 #518 №411357 
14172088466470.jpg
>>407885
лолблять проиграл
Дюсик 03/12/14 Срд 08:36:53 #519 №412642 
http://pastebin.com/VKgQHu1w

Помогите разобраться, почему при первом вызове я получаю 1, а не 18?

Аноним 03/12/14 Срд 11:51:53 #520 №412680 
>>412642
Потому что ты присваиваешь переменной "s" значение "х", а "х" у тебя равен 1.
Потом ты что-то делаешь с переменной "х", но это неважно, по ому что твой метод возвращает в итоге не "х", а "s", которая по прежнему равна единице.
Аноним 03/12/14 Срд 11:56:50 #521 №412681 
>>412680
И да, если хочешь, чтобы возвращалось 18, поменяй же строчки местами:
[code]this.x += n;[/code]
[code]var s = this.x;[/code]
Дюсик 03/12/14 Срд 12:15:44 #522 №412690 
>>412680
>>412681
Добра тебе, анон
comments powered by Disqus

Отзывы и предложения