Этот тред посвящён главному языку будущего - JavaScript. Благодаря своей гибкости используется в браузере, на серверах, в мобильных приложениях, на десктопе и практически во всех видах программирования. Удобный синтаксис позволяет легко писать на нём, а высокая производительность делает его отличным выбором для решения любых задач - от небольших магазинов до огромных highload проектов. JavaScript по праву является самым популярным в мире языком. На каждом сайте есть браузерный JavaScript, а JavaScript на сервере используется такими крупными корпорациями, как Amazon, Yahoo, HP, NASA, Walmart и многие другие.
Сап, аноны. Я не кодил на языках, в которых есть паттерн матчинг. Примерно понимаю, что это, но есть один вопрос.
При паттерн матчинге В случае если выполняется несколько условий, выполняются все действия для каждого из них, или выполняется только первое давшее тру?
Алсо, возможно ли динамическое добавление паттернов в матч-блок, в таких языках? ну, типа в одном месте объявили блок паттерн-матчинга, с двумяусловиями, а позднее, по результату, например какой-то функции, аппендили в этот блок еще одно условие, или удалили какое-то? Или такого не бывает?
Расскажите, кто знает. Лень просто лезть во всякие хаскели\скалы\етк, чтобы проверить и понять.
>>749655 >Ну вообще-то, встроенные модули необязательно рекьюрить. Они в глобальной области видимости и так. И давно такое безобразие? Я как-то пропустил, хотя третий год на ноде.
>>749742 Я о твоем условии Функция сколько аргументов принимает блядь? Один, который должен быть или строкой, или числом, или соотв. объектом? Или три строку, число и какой-то соотв. объект?
>>749639 (OP) Есть 2 стула. Marionette и Angular, что выбрать для пет проекта? С марионет у меня есть опыт, а ангуляр вроде модный, тоже нужно попробовать
>>749839 Я про ноду, валенок. Если жс фронтенде учитывать - под это 95% всех сайтов попадает
>>749841 Почему ты не можешь загуглить > nodejs + название компании Почему ты можешь написать свой ничем не подкрепленный вскукарек, а загуглить не можешь? А, пидор?
>>749868 Я написал истинное утверждение, ты можешь либо принять его во внимание и использовать с выгодой для себя, либо оставаться невеждой дальше, абсолютно плевать. А сейчас мне интересно, почему дети нонче такие тупые и агрессивные?
>>750090 Да где там, void в сишке, например, вообще в других целях запилен. Даже нормальный void малополезен сам по себе и как-то жили без него до 89 года, а в жс он совершенно бесполезен, т.к. управлять памятью нет никакой возможности.
>>750174 Я не ставлю точку с запятой, если после неё стоит пробел и закрывающая фигурная скобка. Перед переносом строки же ; ставлю. Т.е. function myFunction () { var result = something(); } и function myFunction () { var result = something() }
Прочитал весь стайлгайд. Мягко говоря, он спорный.
Не ставить ";" в конце строк, чтобы потом ставить их впереди? Лол. Ещё я люблю отступы внутри скобок условий, если это условие одно. Например, if ( true ), но if (a > b && b > c). Также не вижу смысла делать какие-то отступы при объявлении анонимных функций, особенно если они без параметров, т.е.: setTimeout(function(){ ... }, 100); // вполне ОК
Cдались вам эти гайды и стандарты. В этом и прелесть жс, что можно ебашить код как душа желает при условии вы изучили язык и его изъяны как следует и не выглядет при этом нетакимкаквсе.
Сап, аноны. Интересует, как вообще npm работает на проекте? Хочу сделать простую страничку с инпутом и выводом текста (с сокетами на nodejs + express + socket.io). Решил подключить бутстрап и понял, что хз как это сделать вообще. Набросал вот такой термоядерный пиздец, но он всё равно не работает https://jsfiddle.net/f5jgy097/
>>750363 А что с бовером делать? Подключать к проекту, допустим bower install bootstrap потом. А дальше как саму библиотеку то врубить в том же index.html?
>>749785 Нет, ты ебешь еще не рожденных детей. Бери анг2 ессно, я на его бетке уже проект заканчиваю пилить, годнота. Заодно тайпскрипт подучишь, хватит писать как лошара по ЕС5, вперед к 7-й!
>>750371 > Во-вторых, для нпма вообще нету разницы что делает либа, что угодно туда пихать можно Я же сказал про это > хотя некоторые дауны и фронтендные выкладывают А некоторые и просто репозитории со своими поделками
>>750385 Блядь, почему дауны-то? Раньше npm не умел во flat dependencies, сейчас разницы нет вообще (не считая того, что bower не умеет в nested) - бери и пользуй, все нормальные люди так делают.
>>750392 Потому что нет разделения на фронтенд и бекенд. Используя bower я точно знаю, что в bower_modules/socket.io - фронтенд либа, а в node_modules/socket.io - бэкенд либа. Используя только npm мне нужно смотреть что это за либа, для фронта или бэка. Что, как мне кажется, очень неудобно
>>750400 Не, лет пять уже прогаю. Наоборот, до меня такие мелочи дошли с опытом. Раньше мне не влом было бы и посмотреть, а теперь каждую секунду экономлю
>>750395 Если библиотека тебе не знакома, ты все равно полезешь читать документацию. Если знакома - абсолютно поебать, лежит она в той или другой папке, правда?
>>750409 Я знаю как это решают, но мне так неудобно. И я искренне не понимаю зачем люди добровольно могут мешать зависимости бекенда и фронтенда, это ж всё ещё и в одном файле прописывается. На маленьких проектах это может быть и норм, но мне такое совсем не подходит. Пикрел. Вот зачем мне мешать это всё?
>>750418 У меня в сообщении был акцент на том, что абсолютно поебать на папочку. С чисто backend или frontend библиотека вообще проблем быть не должно. Ты аутист какой-то, еще людей нормальных даунами называешь, блядина. Иди на хуй отсюда.
>>750422 Когда вью рендерится на сервере - один. Разве можно в таком случае иначе?
>>750421 > С чисто backend или frontend библиотека вообще проблем быть не должно Почему не должно, лол? Я только что описал конкретную проблему для меня делать так
>>750443 Во-первых, Такой термин никто не использует больше. Во-вторых, твоя "изомофность" это и есть код, который можно использовать и на сервере, и на клиенте. Если у тебя серверный рендеринг, то большинство зависимостей будут универсальными, так или иначе.
В app.js пишу var bootstrap = require('bootstrap') В index.html пишу <script src="node_modules/bootstrap/dist/js/bootstrap.min.js"></script> И после этого все мои <div class="col-sm-8> работают?
>>750498 Короче так и не понял как с этими npm-bower работать. Говно какое-то нерабочее. Сделал тупо через внешние ссылки в html-файле https://jsfiddle.net/wawte5gq/3/
>>750363 Ебанутый? В npm что угодно можно засунуть и лежит в нем что угодно. Это репозиторий пакетов, а не либ для js Там есть даже десктоп бинарные приложения
>>750363 ПРИШЛО ВРЕМЯ ПОДКЛЮЧАТЬ НОВЫЙ РАКЕТНЫЙ МЕНЕДЖЕР! ПАКЕТНЫЙ МЕНЕДЖЕР САМ СЕБЯ НЕ ПОДКЛЮЧИТ! Я ПОДКЛЮЧУ ПАКЕТНЫЙ МЕНЕДЖЕР ЧЕРЕЗ ДРУГОЙ ПАКЕТНЫЙ МЕНЕДЖЕР! ЗАЧЕМ МНЕ НУЖЕН НПМ, У МЕНЯ НЕТ ВРЕМЕНИ ЕБАТЬСЯ С НИМ! ЛУЧШЕ Я ПОДКЛЮЧУ ЕЩЁ ОДИН ПАКЕТНЫЙ МЕНЕДЖЕР! НА КАЖДЫЙ ПРОЕКТ Я ПОДКЛЮЧАЮ ДЕСЯТЬ ПАКЕТНЫХ МЕНЕДЖЕРОВ. КАЖДЫЙ ПАКЕТНЫЙ МЕНЕДЖЕР КАЧАЕТ ПО СТО МОДУЛЕЙ. Я ЖИВУ АКТИВНОЙ И ПОЛНОЦЕННОЙ ЖИЗНЬЮ!
Подскажите олдфагу-цепепешнику, который на JS последний раз писал под IE6.
Есть Node.js, у него есть event loop. Обработчик запроса может делать IO отдавая туда колбеки. Но в итоге должен вызвать response.end(), чтобы отправить запрос. Что будет, если колбеки глючные и response.end() не вызывают?
>>750761 И таймаут вероятно минутами меряется? И объект запроса/ответа все это время будет в памяти висеть? Т.е. если есть сервер, на котором такой кривой колбек - то посылаем на URL этого колбека 100500 запросов - и сервер падает по out of memory?
Google IO 2016Аноним22/05/16 Вск 22:01:04#122№750795
>>750841 Пиздец, в большинстве вакансий висит первый ангуляра, пока начнешь его ворочить, он уже протухнет, а второй, как мне кажется, еще не скоро в них появится
>>750860 Я думаю проблема как раз в том, что тестовое слишком простое - тупо написать тудушку. Я уже тимлиду говорил, что надо что-то более прикольное сделать, но он чего-то тупит. Поэтому приходят челы, которые кроме этой тудушки, да ещё и скопипащенной откуда-то, нихера не могут. Такие дела.
>>750872 Так и не сказал что нужно вам. Насчет туду согласен, еще часто встречается в заданиях прогноз погоды, блядь, который разобран во многих курсах. Вакансии из дс2, не ваша контора случаем?
>>750873 Ну если просто по технологиям, например, то хорошо бы знать флакс-паттерн (сейчас используем флакс в легаси коде, редакс в новом), всякие сопутствующие либы типо редакс-сага тоже неплохо знать, плюс реакт роутер. Умение пользоваться и настраивать вебпак. А ну ещё у нас тайпскрипт, но он по идее за пару часов учится, так что необязательно даже. Ещё есть серверный рендеринг, но там уже бекендеры шаманят, по сути ничего для фронтендера от этого не меняется.
>>750877 Да, у нас тудушка в тестовом, в дс2. Может и наша.
Аноны, очень прошу, дайте годный туториал по XHR, и HTTP запросы в теле JS, прочитал все первые ссылки в гугле, просто нечего не понял. Или может в какой книге есть хороший раздел по этой теме.
>>749639 (OP) Объясните без подъёба пожалуйста >https://github.com/xxxwww/js-thread/blob/master/Wiki/tools.md Это какой-то набор анекдотов и троллейбусов из хлеба? Например, я не вижу вообще вакансий для бэкенда, кроме ноды, знаю, что в юнити 99.99% юзают C#, а не жс, да и документация пишется для шарпа, не видел, чтобы кто-то предпочитал вордпрессу и друпалу жс хостинги... с остальным всем так же? Это реально используемые и дающие пососать решения или это просто по фану, чтобы было и попиариться на волне популярности языка? Кто-то в здравом уме пишет мобильные приложения, десктопные (окей, окей, брэкетс и атом, да), бэкенд (кроме ноды) на жс или это что-то вроде ASP/ASP.NET для 3.5 сайтов (пусть и годных)?
Что кроме чистого JavaScript нужно учить, чтобы писать аддоны для браузеров? Ну, кроме документации по написанию аддонов, разумеется. Какие фреймворки, чтоб красиво и удобно?
>>751047 >знаю, что в юнити 99.99% юзают C#, а не жс После этой фразы есть ли смысл с тобой разговаривать? В юнити не JS, а лишь внешне схожий UnityScript, который называют JS, чтобы аббревиатура не совпадала с United States.
Положняк, короче, такой: JavaScript уже 20 лет обитает в браузерах - это его основная и пока совершенно неприступная ниша. Поскольку браузеры есть везде, JS тоже есть везде. Поскольку JS есть везде, он популярен. Поскольку он популярен, разные энтузиасты пытаются писать на нём и сервера (Node.js), и мобильные приложения (Cocoon.js, тысячи их) и десктопные программы (node-webkit) и прочее. На данный момент наиболее успешной попыткой применить JS вне браузера является Node.
>>751050 Года три назад занимался написанием аддонов. Кроме голого JS ничего не надо было, но вообще работа эта неблагодарная. Если у хрома ещё туда-сюда (есть нормальные обновляемые доки и адекватное API), то в FF полный мрак: совершенно невозможно пробиться через залежи постоянно меняющихся и устаревающих программных интерфейсов. Там у них ещё вроде собственный язык разметки.
>>751065 Да, я знаю, и питон там не чистый, но все прекрасно понимают, о чем речь, плюс в вашем же фаге написано. Так что предъява не ко мне. Да, ты описал то, что я и сам примерно нагуглил. То есть реально, кроме браузера и ноды, смотреть на остальное есть смысл только из академического или велосипедостроительного интереса, так? Я не ради срача спрашиваю, мне интересна его реальная применимость и осмысленность в альтернативных направлениях. Это все не лишено смысла или это таки чистый энтузиазм? >>751062 Твой пост охуительно полезен. Че вы такие выебистые, хипстота? В ебучку прописать?
>>751070 Нет какого-нибудь высокоуровнего кроссбраузерного фреймворка? Может, хотя бы jQuery можно использовать? Ну, голый js то еще развлечение. Или какие-нибудь альтернативные решения для аддонописателей?
>>751071 >То есть реально, кроме браузера и ноды, смотреть на остальное есть смысл только из академического или велосипедостроительного интереса, так? Тут нужны советы бывалых, но, по-моему, мобильные приложения на JS пишут давно и стабильно. PhoneGap, Appcelerator и так далее. Вот эта компания, например, пишет свои интерактивные книги для айпада на JS: http://tales.ipublisher.com.ua/
Конечно, если тебе нужен графоний и 3D, лучше взять что-то низкоуровневей.
>>751074 Жду тогда еще советов, спасибо. Ну мобильные еще ладно, хотя я тоже не совсем понимаю (их и на питоне с шарпом пишут, но зачем, когда есть java, c++ и ObjectiveC)?
>>751077 > java Гугл её хоронит, вроде как. У них там какие-то тёрки, не поделили деньги, и теперь гугел хочет съезжать на дарт (подмножество жс) > c++ Если скорость действительно важна > ObjectiveC Опять похоронен. Эпол сейчас на свифт съезжает, а больше он никому и не нужен, вроде как.
> То есть реально, кроме браузера и ноды, смотреть на остальное есть смысл только из академического или велосипедостроительного интереса, так? И почему ты так решил? Спокойно можешь использовать всё, что нашло поддержку у корпораций
>>749639 (OP) Привет антон, нужно за неделю - две вкатиться в ангуляр хотя бы на уровне понимания что такое дирректива, где тут контроллер где модель где вьюха. Не хочу читать длинные книги, на сайте тоже тестовые примеры не дают картины. Анон помоги с меня как обычно - нихуя.
>>751259 Shaping up with angular....JS гугли. Вкатишься за 7 часов по этому видеокурсу. Оче просто, понятно и доступно на англицком языке, бесплатно, без смс. Во всяком случае было полгода назад.
>>751266 Макака сделала дело за час и наслаждается зарплатой - разработчик 2 недели без сна ебется со своими костылями, проебывает дедлайн и остается сосать хуи.
>>750472 Просто укажи в head в script адрес выложенной на какую-нибудь CDN либу, добавлять лишнее в зависимости и замедлять загрузку страницы, отдавая лишнее от себя в этом случае 0 смысла.
>>751279 Любые внешние скрипты это апофеоз зашквара. Сколько уже было проблем с этим, когда лапухи подключали jquery и внезапно получали сломанные скрипты.
>>751399 Ну в том смысле, что даже один оператор переводит в булен, но инретированный вариант получается, если еще раз продублировать, то инверсия вернется на место. !Object - инверсия в булен == false !!Object - инверсия инверсии в булен == true.
>>751461 Суд потому, что молодцы из Google какого-то хуя выкатили в свет свою огороженную и не совместимую реализацию Java, которая еще и застряла в прошлом десятилетии.
>>751463 > свою огороженную и не совместимую реализацию Java Это как, лол? Они, вроде как, форкнули какую-то реализацию JDK от апача, не заплатив при этом сан. Сан при этом проигнорили нарушение патентов со стороны гугла, в суд почему-то не подали. А теперь, когда оракл купили сан, оракл это решение сан не понравилось и они начали судиться
>>751477 Нет, соль именно в том, что JDK от Google не лицензирована Oracle и не совместима, что бросает тень на WORA и бьет по репутации компании. Типа... пилишь ты такой свою ламповую Java, а разработчики попробовали программирование под Android и говорят: "ваша Java - говно" - неприятно.
>>751404 Вот как раз подобное говно для дебилов и разжевывают, хотя не понятно где тут затык может быть, тебе сказали, что делает !, хуле тяжело два раза выполнит ьв уме !!? Нет, а вот про реальные вещи, вроед шадоведа, дед зонес или хойстинг хуй какая падла напишет, приходится по стаку как курва лазить.
>>751536 >>751543 Короче, идите нахуй. Какие-то дебилы сидят в этом тренде. Две хуиты подряд посоветовали. Нихуя не работает, зато то, что я сразу от пизды написал как пример реально работает.
>>751546 В жопу засунь свой мультистринг. Тебя четко спросили ДЛИННАЯ СТРОКА В КОДЕ. Или тебе похуй на такое, ебашишь по 500 символов в ширину, а потом скроллишь?!
Ребята, как джсе указать игнорирование аргумента? Например: _.forOwn(obj, (v, k) => array.push(v)), линтер будет негодовать по поводу незаюзанного ключа. Можно как-то подавить один из аргументов? В Go, например, это андерскор: for _, v := range ... .
>>751188 >И почему ты так решил? Спокойно можешь использовать всё, что нашло поддержку у корпораций Я понимаю, что могу, но есть ли в этом какой-то смысл вместо более подходящего решения? Да и я не скзаал бы, что кто-то, кроме ноды и пары мобильных нашел какую-то поддержку у корпораций.
>>751613 >линтер будет негодовать Во-первых, пиши просто _.forOwn(obj, v => array.push(v)), если k тебе не нужен. Во-вторых, это вопрос к твоему линтеру, а не к JS.
Есть несколько маркеров на гугл карте. Есть список li шек. Как мне при клике на одну из них, оставлять один маркер, но убирать другие при этом? Может сделать массив с текстовым наполнением лишек и сравнивать элемент ли с массивом маркеров? Типа если совпадает, то дальше пиздрячить код?
Sup. Есть несколько репортов выполнения тестов. В каждом репорте тесты одинаковые. Мне нужно достать из каждого репорта данные по определенному тесту. Доставать нужно по имени. Мною был рожден вот этот код: http://ideone.com/TrsVc6 Проблема его в том, что он не работает. Если я правильно понимаю, это происходит из-за того, что джс вызывает колбек ДО того, как выполнит форич и я остаюсь с хуем. Собственно, как мне выбрать данные? Каким образом вообще в джс правильно решать такие задачи? Не кидайтесь тапками, пожалуйста, я из шарпа вылез.
Ананасы, я тут хочу, чтобы у меня было хоть что-то, что я смогу показать работодателю, когда пойду устраиваться джуном, поэтому я собираюсь взять cutting edge современного JSа: 1. React.js + Redux 2. Node.js 3. Koa.js 4. Mongodb + Mongoose (сомневаюсь, что CE, но, наверное их) и запилить вот это https://github.com/codedokode/pasta/blob/master/js/spa.md Но у меня возникли вопросы: 1. Валиден ли вообще этот стек технологий? 2. Хороша ли сама задача, чтобы показать свои умения? Или лучше взять что-то другое? 3. Каким образом размещать проект - в одном каталоге или один для клиента, а другой для сервера? Спрашиваю потому, что запутался в концепции изоморфности и потому, что ньюфаг и буду все изучать по ходу дела.
>>751772 Async позволяет сделать один колбек для нескольких задач, выполняющихся последовательно или параллельно Тебе, кажется, нужен метод async.waterfall
>>751769 >1. Валиден ли вообще этот стек технологий? Да, стек хорош. В европке сейчас такое в цене, а здесь - сам понимаешь. >2. Хороша ли сама задача, чтобы показать свои умения? Норм. Задача как задача. Для портфолио пойдет. >3. Каким образом размещать проект - в одном каталоге или один для клиента, а другой для сервера? А это ты сам должен решить. Может нам ещё и код за тебя написать?
>>751777 >А это ты сам должен решить Ну, я пока решил в разных каталогах размещать, однако в каких-то тестовых проектах на гитхабе видел, что люди все в один каталог пихают, и начал думать, что за этим кроется какое-то специфичное для Реакта архитектурное решение. В любом случае, спасибо за ответ.
По работе получил тонну легаси кода на бэкбоне. Какой же пиздец. Зато теперь прогресс стал заметен - ангулар или реакт в такое говно скатить не получится при всём желании.
>>751835 А что тебе не нравится? Я писал больше приложение на бекбоне, с марионет. Хорошая библиотека. Датагрид (бекгрид) там слишком тяжелый, но свой слепить не составляет проблем.
>>751913 Ну да, для совсем края стоило взять Angular2, RethinkDB и какой-нибудь Hapi, но мне все таки нужно что-то более стабильное, с обилием доков и более-менее востребованное.
Пилил сайт на локалке для учебы. Возник вопрос, как сделать, чтобы при нажатии кнопки данные из функции сохранялись в форму (это знаю как), но при этом при повторном нажатии этой кнопки таблица уже не менялась (например если функция при втором применении возвратила другое значение).
>>752055 Если бы я знал как не обращался бы. Мне просто нужен материал для изучения, а я даже не знаю как сформулировать в гугле то, что мне нужно - написал сюда.
бля, нихуя не понятно, как через ебучий жс работать с box2d, просто какая-то свалка функций и переменных. вот в жава все понятно, от чего наследуется, методы overloads. но жс это пиздец какой-то.
>>752265 >>752264 Да мне пока не до основ и не до теории, делаю просто чтобы работало (т.к надо). Через недельку продолжу сидеть с книжками по основам и тд.
Тут уже кто-то спрашивал, но я повторю вопрос: поясните в двух словах, для чего нужен ангуляр(2)? jQuery для манипуляции DOM'ом, Underscore для работы с коллекциями. А ангуляр для чего? Есть ли какой-то смысл юзать его в пет-проджекте или он чисто для энтерпрайзов?
>>752432 Незнание законов не освобождает от ответственности. Твой перманентный консерватизм - это твоя личная проблема. Это как бы не повод для гордости, а именно что проблема. Гордится тем, что не знаешь спек, все равно, что гордится тем, что не знаешь собственных гражданских\человеческих\трудовых\етк прав (а ты их и не знаешь).
Забавно лишь то, что те, кого ты именуешь хипстерами (хотя ты определенно путаешь понятия, сопоставляя хипстеров и моду), так вот, те кого ты называешь модниками живут в своем бытие, двигают свою моду, если того хотят, пишут себе нвомодные перегруженные фреймворки, сто тысяч пакеров, систем сборок и прочего, прочего, прочего. Пишут об этом статьи, для себе подобных, чтобы поделиться своим этим новым. Но. Они не ходят и не кричат, что - ебать, ты пишешь на ваниле? ну и говно, да как ты можешь? ты пишешь на es3, ты что поехавший? фу, нахуй ты живешь? ты поддерживаешь ie6? ты наверное болен? И так далее. Короче, твои эти модники никак не реагируют на то, что ты не с ними. Но тебя (и тебе подобных) почему то сильно коробит, от того что есть какие-то модники, со своими еба ненужными технологиями, и ты не упускаешь момента сказать о том, как это всё хуево. Им на тебя поебать. А тебе на них - нет.
Посоны, что за хуйня с npm? РАБОТА ВСТАЛА ЁБАНА На сайте получаю ошибку 503 Varnish cache error. В консоли ничего не ставится. Если зайти через анонимайзер то сайт доступен.
>>752461 Я диванный, но по-другому-то и нельзя, вроде.
Как я понял, ты инициируешь несколько асинхронных функций, имеющих свои коллбеки, а по завершении всех нужно вызвать основной коллбек. То есть, либо ты используешь посоветованный тебе async.waterfall, который будет вызывать getTestByName друг за другом (что может быть гораздо медленее), либо следишь за количеством уже выполненных функций, ожидая того самого конца, после которго пора вызывать основной коллбек. Ну, может и есть какая-то красивая функция, но она то же самое далала бы, ведь иначе никак. счётчки или флаги какие-нибудь, не суть.
>>752490 Новая работа. Стоит задача проект на экспрессе (14к строчек кодбаза без внешки) переписать на го, но я хочу для этого хорошо разбираться в самой ноде, собственно говоря.
Аноны, привет. Платиновый, может, вопрос, но не гоните. Какое у вас отношение к курсам? Работаю в конторе не по js, по будням есть время по часа два вечером (если по работе все ок)+ выходные.
Привет анон! Очень нужны js программисты на крупный проект в серьезную компанию. Мы хотим использовать следующий стек: На сервере Node.JS, Go, Python и что-то еще, так как микросервисы БД Mongo + Redis, Rethink На клиенте React.JS Нужны как прыщавые джуны, так и опытные бородачи. На первое время, пока будем вкуривать архитектуру нужны люди в офис, потом возможна удаленка. Офис в ДС. Если тебе интересны технологии, ты хочешь развиваться в этом направлении, зашибать рубли, пиши на почту [email protected]
>>752579 >Зачем нужны говноангуляры с говнореактами, если есть HTML и jQuery? Чтобы процессор у пользователя зря не простаивал? Ты разрабатывал сложные интерфейсы с большим количеством дом элементов и сложной клиентской логикой?
Привет аноны, прошел основы js на сайте learn.javascript. Остановился на структурах данных, и некоторые задания даются как-то сложновато. Суть моей проблемы вот в чем. Хочу стать фронтендом, и из-за такой проблемы описанной выше встали вопросы: 1) Чтобы нормально продолжить обучение надо ли было зазубривать основы прям, чтобы от зубов отскакивало или достаточно понимания, что когда применять и так далее? 2) Можно ли параллельно учить "Документ, события, интерфейсы" вторая часть сайта? Учу уже джс где-то месяц, но пришлось сделать перерыв полторы недели из-за учебы. Может где-то я не правильно с чего начинал?
>>752582 Давай лучше замутим офис где-нибудь в Тайланде. Днем будем код писать, а вечером развлекаться с местными трапиками и лольками хотя для этой цели джуны сойдут :).
>>749639 (OP) Насколько много всего сейчас на фронтенде, webpack, browserify, react, react-redux, redux-router, babel. Есть стартер-киты, но они очень нагруженные, чтобы их понять, надо самому хотя бы раз их собрать. В связи с этим вопрос от неосилятора: Есть ли такой стартер кит для реакта, который включает в себя все вышеупомянутое + react-thunk +, возможно, тесты, а главное содержит пошаговое руководство, как собрать такой стартер кит?
Что местный анон думает про ClojureScript, ScalaScript, GWT, Kotlin (JS) и тд?
Недавно смотрел видео одного из разработчиков ClojureScript и там он видвинул такую мысль: "JS из-за своей WAT-убогости, может быть только "байт-кодом" в который компилириются нормальные языки".
Я то с ним согласен, но я человек со стороны и поэтому мне виднее.
>>752655 > "JS из-за своей WAT-убогости, может быть только "байт-кодом" в который компилириются нормальные языки". Пару лет назад это можеть быть и было бы верно, но с релизом ES7 с такого можно будет только посмеяться
Поясните ньюфагу. Если я предположим создаю листенер внутри функции, а потом делаю return, то что происходит с этим листенером? Он самоуничтожится или так и будет висеть?
Блять, ну понятно, что можно удалить вручную. Я же спрашивал про дефолтное поведение, чтобы лишнего кода не писать. Вроде бы логично убивать листенер, который находился внутри отработавшей функции.
>>752678 > Но ты забыл про бульон мобилки от дядющек ляо (которые никогда не обновятся) В смысле не обновятся? Как ОС к хрому относится? Или ты про встроенный браузер? Тогда пикрел
> Да и вообще что может быть такого в ES7 https://github.com/hemanth/es7-features > (и при этом не нарушит обратной совместимости) Уже всякими стрикт-модами нарушают
>>749639 (OP) Может мне кто-нибудь объяснить, какого масштаба должно быть приложение, чтобы была реальная причина использовать фронт-енд фреймворки? Все равно самое узкое место это запросы к базе, а не рендер html.
>>752729 Нет, давай ты мне скажешь причины, по которым стоит использовать реакт, вместо того, чтобы вилять задницей, не давая информации, а пытаясь что-то выяснить у меня. Реакт нужен потому, что: 1. блаблабла 2. блаблабла 3. эти блаблабла слишком дорого реализовывать другими методами Ну так что, обосрамс?
>>752731 Может ты сначала попробуешь написать один и тот же проект с реактом и без, а потом будешь приходить сюда разводить демагогию? Это вопрос из разряда "Зачем мне возить мешки на тележке, если я и на спине носить могу?"
>>752747 Я бы не спрашивал, если бы не делал так. Все, что делал реакт, а именно рендерил ответ от сервера, я решил с помощью серверного рендера и подстановки присланного html в контейнер. Одна строка кода, блядь.
>>752750 Вот именно это реакт и делает, избавляет от серверного рендеринга. Это снижает нагрузку на сервер, как процессорную, так и на канал. Снижает нагрузку на клиент, не нужно больше рендерить огромные куски дома, заменяются только нужные данные, и также снижается нагрузка на канал. Данных передается меньше, результат тот же, только всё быстрее. Вот что делает реакт/ангулар/етс.
В качестве бонуса ещё легкое создание клиентов для мобилок. На серверной части вообще ничего не придется менять, оно уже апи-ориентированное.
>>752447 >>752436 Можно спросить? Я не в теме вашего срача, но вот вы сами же скорее всего не знаете, кто такие хипстеры, и чем они отличаются от модников? Объясните же, если это не так. Кроме того, что модники были и будут всегда, а хипстеры - это самоназвание модников десятых. Просто сейчас модно одеваться, как кретин с маскарада.
>>752872 Ойвей. >The hipster subculture is composed of affluent or middle class youth who reside primarily in gentrifying neighborhoods. It is broadly associated with indie and alternative music, a varied non-mainstream fashion..
ИндиThe hipster subculture is composed of affluent or middle class youth who reside primarily in gentrifying neighborhoods.[1][2] It is broadly associated with indie and alternative music, a varied non-mainstream fashion
>>752915 Всё что нравки кому-нибудь кроме меня - хипстерское говно для тупых модников. Меня так батя учил, он с завода приходил, шёл на лавочку во дворе и с мужиками ругал Антона пидораса который на гитаре играл и на велосипеде катал, на них только пидорасы катаются с трубой в жопе. А нормальные мужики имеют только два интереса - бутылка пива и футбол.
>>752851 Писали либо люди которые только хотят вкатиться в js, либо из далеких регионов. На данном этапе мне нужны люди в офисе, которые разведут холивар по по выбору того или иного стека и примут активное участие в архитектуре. Где вы, кодеры????
>>752584 Насколько сложные? Какое конкретно количество элементов должно быть? Как определяешь сложность логики? Давай пока начнем с этого, а там посмотрим.
>>752912 Ну ассоциируется - это не то слово, которое устанавливает взаимно однозначное соответствие, кмк. Это скорее их характеристика. Как она была у ска, рнб, нью вейва и кучи других говн своих десятилетий >Инди, альтернатива, немейнстрим >Вот вам и подмена понятий. Да нет, ровнёхонько нитакиекакфсе модники >>752915 Давай ты сравнишь число панков, рэперов и скинхедов вместе взятых, и число хипстеров в самом популярном парке твоего города, а потом будешь писать свои высеры? За моду я считаю то, что популярно. >>752924 >>752923 )))
>>753004 Малафья у тебя изо рта вытекает. Что сложного то в нем? Что элементов много? Ну так ты не трогай все их на каждый клин и будет збс. Говна понаписать всегда можно, тебя от этого анальные игрушки ангуляр с реактом не защитят.
>>753011 Ой, ну ты и диванный уебан. Почему всякие петухи, которых не берут делать ничего сложнее лендингов, считают своим долгом зайти сюда и написать о нинужности фреймворков? Пиздеть-то все горазды, ты такое написать попробуй на html+jquery, как сам говорил, приходи с результатом, а потом говори что там где не нужно и в чем корпорации, имея лучших специалистов в мире, заблуждаются
>>753017 Опять же я мимо, но у тебя петушиная аргументация со ссылками на авторитеты. А зачем ваша параша нужна, так и не объяснил. Кстати, тот говносайт лично у меня подтормаживает в фуллашди на четырехядерном ш7.
>>753017 Ну допустим там висит 30 обработчиков, у меня 14, на сосаче 12. То есть тут разница всего в 2 раза, даже не на пол-порядка, не говоря уж о целом порядке. Где тогда сложность? Сосач - простой как пробка в плане UI сайт, то поделие что ты скинул "сложнее" в 2.5 раза, то есть тоже довольно простое. Итого: сложнаааа, сложнааааа!!111 А на деле обычный круд с парой свистелок. Я конечно понимаю, что тебе печет, но контролируй свои баттхерты. Кроме ебли с фреймворком тебе фреймворк нихуя не дает.
>>753031 > аргументация со ссылками на авторитеты. У тебя её вообще нет, защекан > А зачем ваша параша нужна, так и не объяснил. Модульность, организация кода и представления В итоге приложение разбивается на независимые компоненты, которые можно легко заменять/использовать/шарить все идет к тому, что на распространенном фреймворке популярные задачи можно будет просто собрать из готовых компонентов
>>753047 Ты посчитал все листенеры на всех страницах? Это SPA, Маня. Все страницы - это одно приложение, работающее без перезагрузок страницы. Фреймворк всем этим рулит, в том числе и листенерами На харкаче же всего две страницы, хуй знает как ты его умудрился поставить его в один ряд с SPA, ну да ладно, я уже понял, что ты в-край-ебнутый-ньюфаг-нигилист, такие тут в каждом треде вылазят
>>753054 Я и не говорю, что нельзя Просто с фреймворком это три дня, а без него - три недели. Для этого ж, блять, фреймворки и нужны, поэтому их и используют
>>753056 Ну, для макаки - может быть. Если умеешь сам думать, а не на дядю полагаться, то сделаешь еще быстрее, благо к jQuery дохуища готовых плагинов.
>>753049 > защекан Не бомби, петушок >тебя её вообще нет Напомнить тебе, на ком лежит бремя доказательства? >>753049 >Модульность, организация кода и представления >В итоге приложение разбивается на независимые компоненты, которые можно легко заменять/использовать/шарить Ммм, а я-то думал, для этого ООП и паттерны проектирования придумали, извини, был не прав. >популярные задачи можно будет просто собрать из готовых компонентов Пруфани. Мне нужна галерея-слайдер с выбором материала и переходом на соответствующую страницу, допустим, выберу из 20 вариантов. Потом, допустим, галерея на всю страницу для чего-то вроде тумблера/инстаграма. Менюшка как на главной мыло.ру. Подстветка кода для произвольного техтареа. Ну и какой-нибудь раскрывающийся блок, навел на картинку, появилось описание, а картинка чуть вверх съехала. Это вот все самые элементарные вещи, покажи мне, как впилить их одной строчкой кода к себе в проект, и где выбрать каждую хуйню из хотя бы двадцатки вариантов.
>>753081 >не бейте лучше обоссыте Хорошо, хорошо, мань, только не плачь. Все уже поняли что твоя аргументация сводится к тому что тебе так сказали и что сам ты думать не умеешь.
>>753064 > Ммм, а я-то думал, для этого ООП и паттерны проектирования придумали, извини, был не прав. Что ты несешь? Я про реальную компонентность говорю. Прям, блять, компонентность. Вот так это выглядит https://github.com/michaelbromley/ng2-pagination
> Мне нужна галерея-слайдер с выбором материала и переходом на соответствующую страницу, допустим, выберу из 20 вариантов. Потом, допустим, галерея на всю страницу для чего-то вроде тумблера/инстаграма. Менюшка как на главной мыло.ру. Подстветка кода для произвольного техтареа. Ну и какой-нибудь раскрывающийся блок, навел на картинку, появилось описание, а картинка чуть вверх съехала. Это вот все самые элементарные вещи, покажи мне, как впилить их одной строчкой кода к себе в проект, и где выбрать каждую хуйню из хотя бы двадцатки вариантов. Ты понимаешь разницу между элементарными задачами и распространенными? Кто тебе сказал, что там будет 20 вариантов? Будет слайдер, вся его логика с каким-то простеньким шаблоном-демо, а ты его подгоняешь под свои нужды
>>753011 >>752992 Нет, он прав. В таких случаях стоит использовать фреймворк, потому что в итоге ты либо сам его напишешь (что занимает время), либо заюзаешь готовое решение, в котором не будет багов. Основной аргумент здесь, что таких случаев не много.
Аноны, начал учить жс. На втором же видеоуроке попал на затык. Задача нарисовать в консоли пирамидку из звездочек. Я написал такой код function draw (n) { var counter = 1, result = ''; while (counter <= n) { result += '*'.repeat(counter) + '\r'; counter++; } return result; } console.log(draw(10)); Но он почему-то отдает только самую последнюю строку, а не всю пирамидку. Но если в каждой итерации цикла вызывать отдельный console.log то все ок, но я хочу сделать красиво чтоб пирамидка была одной строкой с переносами каретки. В чем тут проблема?
>>753084 >Ты понимаешь разницу между элементарными задачами и распространенными? Кто тебе сказал, что там будет 20 вариантов? Будет слайдер, вся его логика с каким-то простеньким шаблоном-демо, а ты его подгоняешь под свои нужды Давай, покажи весь этот список
Анончики, если ли какой-нибудь сайтец по покупке "поддержанных" книг? Хотел бы прикупить литературу по JS в таком формате, но слишком дорогие книги - от 550 рублей. Ниндзя вообще +1500 стоит вроде. Я нищеброд и не готов такие деньги на это отдавать.
>>753349 А зачем бумажные покупать если у тебя нет на них денег? Тебе от этой покупки будет намного хуже, а издательство и автор и не заметят этих денег. Не плоди страдания, качай торрентом.
>>753505 Добавил свой ЭКЗЕМПЛЯР КЛАССА в её ОБЛАСТЬ ВИДИМОСТИ?
Меняющиеся стандарты. Нас держат за идиотовАноним25/05/16 Срд 13:28:35#476№753572
Вы посмотрите на остальные языки, на зарплаты "настоящих" программистов. Никогда js макаке не предложат настоящую зарплату. Всегда, когда речь заходит о js-программисте изначально его воспринимают как подсобного рабочего.
30к и бесплатная водичка в офисе - все на что ты можешь расчитывать. Но ладно о работодателях. Меня раздражают не они, а то что дает повод для травли.
Это стандарты. Это те самые ушлепки, которые в 2016 году держат мир в неопределенности. Вы когда-то слышали чтобы C++ код нужно было поддерживать? Чтобы c# или java приложения нужно было писать с префиксами и изначальным осознанием, что сегодня этот код валиден, а завтра ты его нигде не запустишь просто потому что Google решил выпилить это API из браузера.
Мне возразил мой друг, типа есть хромиум опен сорс проект и каждый может сделать свой хром и продвигать его. Серьезно, кто сегодня сможет продвинуть свой браузер в одиночку? Я точно нет. Даже идеальный браузер потонет в маркетинге и информационному давлению интернет корпораций.
Любой твой сайт будет отключен, если представляет угрозу сложившемуся балагану. Ведь он выгоден компаниям. Можно не воспринимать js кодеров за программистов, потому что ничего невозможно построить в постоянно шатающейся среде костылей и префиксов, "меняющихся стандартов".
Посоны, почти доделал сайт, работает на js и node. Возникла такая проблема: когда включаю телефон и захожу на сайт через хром, телефон просто зависает не догрузив мой сайт. Как это дебажить вообще, в чем может быть проблема?
Посоны помогите по AngularJS 1.x Суть такова. Есть два контроллера. Один контроллер берет данные из формы и отправляет $http.post на сервер (бекэнд на PHP добавляет данные в БД). А второй контроллер выводит список на основе БД. Как сделать так что бы когда я нажал "Добавить", после того как контроллер получил $http.success он запустил контроллер, который обновит данные в списке?
>>753650 Callback'и висят в памяти, ожидая события. Событие произошло - вызвался callback. Нужны они для того, чтобы: 1. не тормозить код на время выполнения функции, которая содержит I/O 2. реагировать на события, а не проверять state
>>753664 То, что код продолжает выполняться дальше, очевидно. ...code...code...actions...calls... func_with_callback(callback); и дальше, не дожидаясь окончания ...code...actions...calls... Затем, когда функция отработает, внутри неё будет вызван callback и поток вернется к ней.
>>753676 Все остальное так или иначе обертки над callback'ами.
>>753677 В смысле не нужны? Как ты собираешься вызывать код, который ожидает ответа от сервера, например? Тормозить поток выполнения не вариант, т.к. он отвечает за рендер.
>>753687 Так или иначе callback это реакция на событие. Так проявляется декларативность. У js'а есть механизм, который после окончания каждой функции (или действия пользователя, а еще по таймеру) проверяет, не пора ли вызвать callback. Т.к. js всегда в одном треде, то функция не прервется на вызов callback, но после выхода из неё будет проверка, не пора ли вызвать callback? Поэтому в Js предпочтительны малые функции.
Этот тред посвящён главному языку будущего - JavaScript. Благодаря своей гибкости используется в браузере, на серверах, в мобильных приложениях, на десктопе и практически во всех видах программирования. Удобный синтаксис позволяет легко писать на нём, а высокая производительность делает его отличным выбором для решения любых задач - от небольших магазинов до огромных highload проектов. JavaScript по праву является самым популярным в мире языком. На каждом сайте есть браузерный JavaScript, а JavaScript на сервере используется такими крупными корпорациями, как Amazon, Yahoo, HP, NASA, Walmart и многие другие.
Часто задаваемые вопросы:
https://github.com/xxxwww/js-thread/blob/master/Wiki/faq.md
Список материалов для изучения:
https://github.com/xxxwww/js-thread/blob/master/Wiki/learn.md
Список инструментов и направления JS-разработки:
https://github.com/xxxwww/js-thread/blob/master/Wiki/tools.md
НЕ КОПИРУЙ КОД ПРЯМО В ТРЕД!
Воспользуйтесь https://jsfiddle.net/ для браузерного кода и https://ideone.com/ для серверного кода.