24 декабря Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!
В этом треде адепты самого гибкого и удобного языка в мире обсуждают дальшнейшее развитие этого торжества научно-технической мысли. Официально принят ES6, а значит недостатки JS окончательно искоренены. Ура! Обсуждаем чистый JS, Node, jQuery и другие проявления этого замечательного языка, не забывая смеяться над залётными рабипетушками.
Ньюфагам: 1. Что это за язык такой? - Мультипарадигменный язык, изначально создавался для использования в браузерах как язык сценариев для придания интерактивности веб-страницам, однако в процессе своего развития преодолел этот этап и сейчас может использоваться для любых целей ввиду своей неограниченной гибкости и удивительно удобного синтаксиса.
2. Это чтобы менять цвета, и вызывать всякие всплывающие окна? - Нет. Это только малая часть того, что может язык. Сейчас, на JS можно делать игры (phaser, cocos, etc.), 3D графику (three.js), можно делать и приложения для телефонов(phonegap, ionic), можно делать десктоп приложения(NW.js).
3. Ну ясно, а че еще можно? - А еще можно использовать на сервере, причем очень даже успешно. А все благодаря платформе Node.js, и v8, который встроен во все хромоподобное. Node.js по производительности и удобству работы превосходит большинство остальных серверных языков.
4. Я щас ничего не понял, повтори. - Проще говоря, если ты делаешь огромный интернет магазин или хай лоад проект, то можешь смело использовать JavaScript и Node.js.
5. А что еще прикольного можно сделать? - А еще есть MVC фреймворки, Angular, Backbone, Ember, Knockout и другие, менее популярные.
6. Зачем оно надо? - Для создания SPA, в основном, но ты можешь копнуть глубже.
7. Очень уж много всяких фреймворков... Нельзя ли просто изучить jquery и писать все на нем? - Не стоит, можешь начать писать на жыквери, когда освоишь ванильный JS, дабы не испортить себе восприятие языка, и вбудущем не испытывать трудностей с изучением сложных фреймворков.
8. Ну ладно, с чего начать изучение то? - Дальше я приложу список материалов для изучения.
Учим JS: Книги: Дэвид Фленеган - "JavaScript: Подробное руководство"
Кирилл Сухов - "Node.js. Путеводитель по технологии"
Эдди Османи - "Разработка Backbone.js приложений"
Dr. Axel Rauschmayer - "Speaking JavaScript: An In-Depth Guide for Programmers" - Одна из лучших книг по JS. Пока только на английском. http://speakingjs.com/
Выбери себе направление. Может, ты хочешь игори делать? Тогда вперед на гитхаб, и ищи phaser, pixi и другое, выбор не маленький. Хочешь на сервер сайд, на самой хипстерской технологии? Копай в сторону node, express, socket io. Хочешь писать MVC логику? Angular, backbone, да множество их. Нельзя забывать про NW.js, позволяющий создавать десктопные приложения.
Нуб ИТТ. Средствами JS, насколько я понял, нельзя изменять исходный код CSS/HTML (подчеркну, не поменять свойство, а поменять сам исходник CSS/HTML). Допустим есть ul, есть input:text, хочу, чтобы то, что ввелось в input добавилось в li. DOM не подходит, так как исходник-то html не поменяется. А нужно, чтобы новый элемент остался в списке, даже когда я завтра открою эту страницу.
>>525288 Нуб ИТТ. Средствами Notepad.exe, насколько я понял, нельзя изменять исходный код CSS/HTML (подчеркну, не поменять свойство, а поменять сам исходник CSS/HTML). Допустим есть ul, есть input:text, хочу, чтобы то, что ввелось в input добавилось в li. DOM не подходит, так как исходник-то html не поменяется. А нужно, чтобы новый элемент остался в списке, даже когда я завтра открою эту страницу.
Допустим у меня в папке на сервере лежит насколько картинок. Как из загрузить в маленьком виде так, чтобы трафик не уходил? В низком разрешении то есть.
>>525246 Если дотнет-боярин не сикает на голову себе сам, значит дотнет-боярин сикает на голову себе сам. Если дотнет-боярин сикает на голову себе сам, значит дотнет-боярин не сикает на голову себе сам.
Ананасы, решил осилить этот ваш js и прихуел от отсутствия вменяемой инфраструктуры у одного из самых распространенных языков. Помогай анон, есть ли какие-нибудь библиотеки для анализа/рефакторинга js-кода на уровне питоньих jedy/rope? Нашел только какую-то хуйню под названием grasp.
Есть один скоуп на 3 дива. Скоуп меняется - меняется скоуп в 3 дивов. Можно ли как нибудь обновить скоуп в одном диве, что-бы не менялся скоуп в 2 других?
>>525288 И да, "когда завтра открою веб-страницу" это уже бэк-енд или кэш браузера, или кнопка в браузере "сохранить страницу". А до нее, вроде, не добраться, джс ограничен.
>>525769 Нет :( Нужно как бы инкапсулировать скоуп на дивах. И при нажатии на какой либо див с text/example, менялась text/example и наоборот. Но при том что бы работала логика с радио.
Этих text/example на странице будет дофигища, от 20 штук. И страниц тоже до фига. Самому описывать очень долго, вот ищу решение.
Как же бесит этот миан стак, нихрена не могу понять как связать эти технологии и иногда что отдельные делают. В каждом туторчике используются разные модули, используют разные вызовы одних и тех же методов, но самый сок в количестве используемых элементов в базовых приложения >express >mongoose >mongodb >connect-mongo >node-uuid >async >ejs-locals >nconf >string >validator >winston
Вот нахуя так много, нельзя разве использовать три модуля и сделать базовое приложение?
>>526698 Мне кажется он доходит до абсурда, они используют ради пары функий, чтобы прочитать файл настроек целую библиотеку, а для связи с монго сразу три библиотеки. При этом точно монгус на сколько я знаю это дополненый и обернутый монгодб. На фронте некоторые активно борются с использование jquery, создают сайты за использование натива либо же с отдельными плагинами.
Ты так говоришь, как будто все библиотеки сравнимы. Если тебе нужен сраный pi, то ты его берешь из сраного math, а не считаешь на коленке. Какая нахуй разница где лежит файл с кодом, если он полностью удовлетворяет твоим потребностям?
>При этом точно монгус на сколько я знаю это дополненый и обернутый монгодб
mongoose - orm, mongodb - драйвер. connect-mongo вообще session store
> На фронте некоторые активно борются с использование jquery, создают сайты за использование натива либо же с отдельными плагинами.
Ну ты сравнил жопу с пальцем. На фронте борются с jquery не потому что библиотеки это "плохо" (схуяли так вообще думать?), а потому что на фронте каждый лишний файл это лишнее время загрузки страницы. На бекенде нихуя не так. У тебя могут быть гигабайты кода что с ебаным npm обычное дело, но запрос может "проходить" через пару мидлварей, роутер, сразу в контроллер в котором res.send('sosi hui')
Посоветуйте минималистичный двусторонний биндинг без декларативной хуйни в хтмл. Нужен внутри сложного компонента, SPA фреймворки и всё остальное прибитое гвоздями сразу нахуй.
Вот я начал учить JS. Вроде основное знаю, плюс ES6. А что дальше делать? У фреймворков гайды и доки устаревают быстрее, чем их пишут. Только нода выглядит стабильной. Досточно будет ее выучить чтобы найти работу?
Приглашаем в конфу JS-треда. Помогаем освоиться с языком, решить проблемы с кодом или выбрать IDE, а так же лампово общаемся на околоайтишные темы. Что бы попасть к нам, пишите на [email protected] Нас уже 37 и мы собираемся расширяться.
>>527467 Твоя голова забита каким то говном. Если у тебя нет опыта работы, твоя задача найти работу джуном на любом языке, а не сидеть и мечтать выучить какуюто там ноду. Только реальная работа над реальными проектами дает полезные знания, всё остальное это хуйня, как вы не поймете. Прямо сейчас рассылаешь резюме и подписываешь, что готов жрать любое говно за деньги. потом ты поймешь, через много лет, что технологии меняются, языки меняются, главное чтоб башка варила
>>525288 Ты делаешь это неправильно. Сохраняй то, что ввел в input в базу (или еще куда-то) с помощью бекенда, а затем с помощью view отображай как ul. Зачем изобретать велосипед, если они уже придуманы?
>>527449 http://gwendall.github.io/way/ Попробуй добавить скиллы. Оно обсирается на собственной же демке. И срёт в хтмл атрибутами. Мне бы совсем в хтмл не лезть, ибо есть кастомные контролы.
>>527624 Ну вот есть у меня уже готовый дом, на котором нужно запустить компонент. Таких компонентов может быть на странице много и они должны быть изолированы от всего остального. Внутри применяются ещё хитрый компоненты, с них тоже нужно читать/писать bidirectional. Нужно соединять/разъединять биндинги. Нужно иметь внутри модели, которые тоже связаны биндингами, чтобы вся эта байда в виде графа обновлялась.
Почему от веб-макаки требуется так много всякой хуйни чтобы начать работать? Не проще ли пойти питонистом/рубистом/джавистом, где не требуется 100500 фреймворков?
ЖСаны, поделитесь опытом собеседований и общих впечатлений от новой работы. На какую ЗП претендавали? Нравится ли работать? Какого уровня задачи делаете? Нода или фронтэнд - интересно все.
>>528655 Собеседовался на фронтендера будучи верстальщиком. Показывал пет-проджект в качестве примера кода, потому что коммерческого js-опыта не имел. Взяли. Полгода смотрели как на говно, потому что был говном и не справлялся. Потом прочитал все книжки по джаваскрипту, сразу применял все на практике. Через пару лет стал помидором.
>>528673 Не помню, что-то невнятное. Спрашивали, что и как делал в пет-проджекте, я объяснял. Со stackoveflow любой может код накопипастить, важно объяснить, что этот код делает, и почему нужен именно он.
Меня просто взрывает, делаю авторизацию на mean стаке, при этом только учусь. Решил использовать passport, так к нему гайды это мрак, документация - отсутствует. http://habrahabr.ru/post/201206/ В 6-ом блоке кода >в функцию верификации, котоую мы определили выше. И выше не определена ни одна функция, в пяти блоках кода нет ни одного определения функции. Смотрим оффициальные гайды https://github.com/jaredhanson/passport-local/blob/master/examples/express3-mongoose/app.js На 178 строке создаем проверяющую функцию, она вызывает req.isAuthenticated(), смотрим на офф сайте что за метод, что ему кормить и что от него ждать http://passportjs.org/docs, и тут у нас нет этого метода, а вся документация это не документация, а гайд! Как мне делать эту чертову авторизацию на mean стаке, при этом мне не нужна такая что выдержит лучших хакеров планеты, а такая чтобы новичек мог понять.
>>528733 > http://habrahabr.ru/post/201206/ > В 6-ом блоке кода > >в функцию верификации, котоую мы определили выше. > И выше не определена ни одна функция, в пяти блоках кода нет ни одного определения функции. А это что?
Есть выпадающее меню, обычное <select><option>1</option><option>2</option></select> Вся эта фигня находится в некой "программе" в браузере. Если я руками выбираю один из пунктов меню, то программа понимает, что значение изменилось и позволяет нажать кнопку "save". Если же я делаю menu.selectedIndex = n, то отображаемое значение (как и selectedOptions) меняются, но программа ничего не воспринимает, поэтому кнопку сейв сколько ни нажимай (программно или руками), ничего не происходит. Как сделать так, чтобы код полностью имитировал выбор "руками"? Полагаю, можно какой-то эвент запустить, но все onchage, onclick и т.д. пустые, там свои какие-то апи в которых разбираться оче неудобно (код-то весь минифицирован). Может, можно в хроме как-то следи за всеми эвентами? В firebug'а, вроде, есть Log Events, а есть ли что-то подобнео в хроме? Менять браузер не предлагать, так как программа работает исключительно в хроме, благодаря замечательнейшим разаработчикам.
Скриптаны, что там с бэкбоном и марионеткой? Автоматические two-way биндинги завезли, inb4 нинужны или все руками надо связывать? Я немношк посмотрел, там какой хтмл прямо в коде, это by design? Ну и какие подвожные камни, тянки то течь будут ?
>>529235 Linux или сборка из последних. В Linux стартует быстро из-за особенностей файловых систем, например, Ext4, в Windows в последних версиях все загружаемые модули склеиваются в один большой файл, что приводит к быстрой загрузке на NTFS.
Где искать работу? Я студент, немного работал(писал нужные модули, абстракции на жс) с не совсем официальными проектами. Есть нужда сменить текущее место.
>>529857 Автор ривета такая-то вниманиеблядь, фоточку выложил в шапочке с бородой, смотрит куда-то в сторону. Короче типичная жсблядь (я такой же). Но спасибо, может поюзаю (если не забуду как и тысячи других баззворд либ)
>>525206 (OP) В умелых руках JS оказаться не может, потому что умелые руки об него пачкаться не станут. Человек, мало-мальски понимающий, что он делает, никогда, ни при каких условиях не станет применять JS на сайте. Иное дело, что в современных условиях грамотные люди в веб-разработке не задерживаются.
Лично я обычно просто не хожу на сайты, которые не работают без JS, то есть вообще не хожу — точно так же, как не хожу, например, в такие магазины, где продавцы хамят и матерят покупателей. Но, увы, есть парочка сайтов (буквально: два), которые мне использовать приходится, несмотря на наличие там JS и невозможности работы без него. Так вот, чтобы зайти на такой сайт, мне приходится на рабочей машине держать специально для этого пустой аккаунт, на котором периодически сносится всё, что там успел нагвоздить браузер; перед заходом на JS-нутые сайты я делаю ssh -X bolvan@localhost и уже там запускаю браузер. Это вы называете "повышением юзабилити"?!
NB: у любого сколь бы то ни было технически грамотного человека JS в браузере должен быть выключен. Period. А дальше те, кто пользуются *nix-системами, хотя бы могут делать как я — гонять второй браузер из-под чистого и изолированного аккаунта, тогда как пользователи Win и прочей нечисти не имеют даже этой возможности. Но ублюдков-вебразработчиков, разумеется, это не волнует, потому что, видимо, они всерьёз не понимают, почему это всё так.
>>530323 из трендов -- http://habrahabr.ru/post/261205/ + куча диалектов, которые компилируются в js. с ходу вспоминаются closure, lispyscript, pyjs. + было кофе, но с него наверное все переползли на es6 уже (сам никогда на нем не писал, у них там своя атмосфера) + asm.js, но это еще одна отдельная история
Поцаны, что делать если не могу в самоучение? Имею как я думаю знания джуниора, но никак не могу развиваться дальше. Ковыряюсь в низах, не могу нормально в гугл и документацию. Раньше кодил с другом, он поопытнее, многому научил, но он ушёл царствие ему небесное и я сижу как хуй. Пытался в ютубо-уроки, смотрю и пробую, но как-то хуита и детский сад. На кодекадемии застрял на какой-то хуйне вроде циклов или массивов скорее всего из-за моего пёрфект инглиша, а так могу и в циклы и в массивы (правда опыта мало). Так и сижу хуйнёй страдаю, бухаю, дрочу, смотрю кино, но не кодирую. Отягчающее, что сдаю квартиру, и деньги на выживание есть, поэтому я "учусь кодить" уже года два - три. Вот. Как перестать быть пидором и начать кодить?
>>530625 Если ты застрял на циклах и массивах, то это никак не знания джуниора. Сделай себе нормальное расписание, например, встрал, пожрал, один час потупил, 4 часа позанимался, 1 час потупил, пожрал, 4 часа позанимался, а дальше весь вечер что угодно делаешь. За месяц такого ежедневного дроча найдешь работу джуном, отвечаю.
>>530636 >За месяц такого ежедневного дроча найдешь работу джуном, отвечаю. Не найдёт. Он так и будет сдавать квартиру, да ещё и аудюфьник возьмёт в кредит.
>>530636 Хороший совет, я попробую. На массивах застрял из-за инглиша и пошаговой системы (которая обычно норм) на кодекадемии. Я могу в массивы. В конце весны написал вполне себе рабочую игрулю для браузера (с помощью, но всё ещё понимаю как она работает и почему)
>>525206 (OP) Сейчас изучаю JS по видюхам sorax'a. Хочу программировать в web сфере. Знаю на базовом уровне css с html. Посоветуйте пожалуйста язык для бэкенда Один анон посоветовал питон и обосрал пхп, другой сказал, что в такой связке заказов не найду, не знаю что делать. И какие материалы курить с ним. Что ещё по JS можно почитать/посмотреть и по другому фронтенду. Английский более менее знаю но не технический. Могу только в реальную математику. Как лучше изучать это дело? Что нужно будет выучить, чтобы брать нубские заказы ради кэша и практики? Не обсирайте плиз. Я в фак могу но я нуб.
Ну смотри, не вижу смысла распылять силы на фронт и бек одновременно, продолжай учить JS и вкатывайся в фронт онли вакансий дохера, клепай для практики в HTML/CSS для всяких вордпрессов и просто сайтов. в воркаче есть тред верстки, там есть ссылки на всякие тестовые штуки А если конкретнее, то посмотри вакансии, знаний у тебя пока маловато думаю. 1) Обычно надо знать пару фреймворков, самый популярный angular, за него и возьмись. 2) Посмотри как писать Unit тесты, на karma/mocha/sinon/chai, обязательно посмотри на Selenium. 3) gulp или grunt, что-то из этого надо знать, выбирай любой. 4) git - без него никак. Заведи себе гитхаб и просто коммить туда свой код. 5) Знать базовые вещи, например "как работают замыкания". Отлично описано в eloquent js, хорошая книга и читается за недельку, есть упражнения 6) Паттерны проектирования, Карл, чтобы от зубов отскакивали. посмотри стайл гайд airbnb какого-нибудь, и пиши ЧИТАЕМЫЙ код
>>530779 Если ты нуб, то забей на бекенд пока что. Но пхп точно лучше не изучать, в любом случае, можешь вкратце посмотреть как там что и как, но углубляться не стоит, пока реальные задачи вдруг на нем не появятся.
Изучай нативный жс, прочитай пару книжек (например Кантора и eloquent, но они довольно сложные становятся, последние 20-30%.) По зораксу ты ничего не изучишь, это так, для закрепления материала, советую просто все видосы посмотреть подряд, а потом, после книжек ещё раз пересмотреть.
Как изучишь более менее хотя бы основы нативного жс, то можешь какие-нибудь библиотеки посмотреть, жквери например. Потом можно какой-нибудь популярный MVC поковырять, реакт или ангуляр, например.
Чтобы брать заказы на фрилансе, скорее всего нужно будет разбираться в CMS'ках, если ты сайты хочешь делать.
>>530789 >не вижу смысла распылять силы на фронт и бек одновременно Ну и еблан, фулстак во фрилансе наше все. >самый популярный angular, за него и возьмись. Совет уровня дебилоида, сам поймешь почему. >Посмотри как писать Unit тесты, на karma/mocha/sinon/chai Охуенные советы для новичка. >>530791 >популярный MVC поковырять, реакт или ангуляр, например. >mvc >react Полон тред говносоветчиков, за советами пиздуй в гугл, quoara, stackoverlow тот же. православный оп жс тренджей
>>530801 Отличный подход, сам нихуя не посоветовал, зато всех хуями обложил. Открываем квору, открываем первый же тред "что надо учить по жс", читаем ответы и видим: JavaScript specific advice: Focus on Node.js (or IO.js) and pick a server-side framework (like Express.js) Pick one client-side framework (Angular, Ember, React), it doesn't really mater which one, just pick one. Write only JSON APIs on the server side Test your APIs (use something like Mocha.js) Consume your APIs with your client framework Learn the chrome dev-tools Always js-hint your code, make that part of your build process (or better, your editor)
И советуют почти все выбрать одно, а затем уже сделать перекат в бек, потому что нужен ОПЫТ в ПРОДАКШЕНЕ, без которого он так и будет нюфаком. И да, весь СНГшный фуллстак это php+jquery, в лучшем случае angular. А на апворке он соснет, я сам там работаю. Нахуй сам пойдешь или тебя послать?
>>530811 Качай скиллы которые есть. JS и HTML/CSS, посмотри вакансии у себя в городе и попробуй на них пройти, заодно смотри требования и учи что требуют. Работу на апворке можешь не искать особо, там конкуренты это индусы за даллар в час, у которых по 10 лет опыта. Если не веришь, зайди в апворк-треды воркача и почитай баттхёрты. Реальность такова, что ньюфагу без опыта на апворке делать нечего. Годик офиса нужен как минимум, там ты узнаешь много чего.
Дрочить бэк и фронт одновременное тебе сейчас нет смысла абсолютно. Если хорошо осилишь JS, сможешь в тесты, MVC и другие штуки, то потом без проблем можешь перелезть на бэкенд. Тебе сейчас важнее всякие такие "фундаментальные штуки", ООП там выдрочить, понять как работать с MVC и БД, тестики, паттерны, модульные разработки.
>>530818 Короче тогда по этим советам? >>530789 >>530791 >>530808 Надрочить фронт, а после добавить бек когда буду нормально знать яп. Это единственное, что я понял в голове каша из всего, что накатали. Что? Как? В какой последовательности?
>>530824 Если правда шаражка то вперед, программируй, фрилансь, делай проекты. Если же хоть сколько нибудь нормальное заведение лучше больше налегать на учебу.
>>530819 Да, именно так. Лучше дрочи один язык, научись писать на нём хорошо. Бэкенд на ноде сейчас популярен, с хорошими знаниями JS вполне можно стать фуллстак разработчиком. А в целом, надо ли тебе быть фуллстак разрабом? Зарплаты у фронтендеров не ниже, в нормальный компаниях "фуллстак" разработчиков нет толком, это хуйня которую зафорсили в фейсбуке пруфы в гугле.
Тебе же нужно программирование чтобы работать удаленно и набигать на весь мир? Тогда задрочи одно, стань в нём очень хорошим специалистом и тогда работы будет хватать. JS сейчас отожрал половину рынка веб разработки, так что работы как говна.
Я бы выбрал такой путь: 1) HTML/CSS - открой верстка-тред в воркаче. Там вроде рикаминдуют HTML Academy, плюс есть куча шаблонов которые можно сверстать для практики. На самом деле версткой ты скорее всего заниматься не будешь потом если не говношарага, но обычно джунов любят посадить верстать говно, ну или во фрилансе. 2) JS - книги в шапке есть. Стандартный набор типа Eloquent JS > Фленеган > Good Parts > Паттерны 3) Затем смотришь всякие фреймворки которые актуальны на рынке. Выбор большой, тупо смотри по вакансиям какие востребование. 4) Пишешь всякое говно, учишься работать с гит, набигаешь на вакансии, работаешь. 5) Заканчиваешь свою шарагу, получаешь диплом без диплома визу тебе никто никогда не даст, запомните уже и за это время имеешь несколько лет опыта работы. 6) ... 7) Набигаешь на удаленку, получаешь охуенные деньги, ссышь фрилансерам в рот.
Ах да, советую дрочить английский, это пожалуй самое важное. С опытом работы реальной ты уже без проблем сможешь потом перейти на любой питон-го-раби-другое-говно.
Из ресурсов советую freecodecamp, codewars, udacity.
>>530837 Че ты несешь, блядь, мудель, хочешь сказать nodejs отожрал половину рынка бэка? Я более тупой манямирковой хуйни давно не слышал. Даже ебучее ruby более распространено на бэке.
>>530878 Дебил, половина рынка != половина бэкенда. Посмотри вакансии, сейчас половина вакансий веб разработчиков это js. Причем тут вообще бэкенд и нода, жопочтец?
Ну это вообще пушка! Это же эталонное воплощение программача - не прочитать нормально пост, вырвать что-то из контекста и ответить вообще не по теме, причем то что вообще не соответствуют действительности, в чем любой легко может убедиться, при этом оскорбить несколько раз с матом и ещё упомянуть манямирок, и напоследок ещё написать типа остроумный комментарий.
>>530902 >Пытается доказать, что нод.жс захватил часть рынка, и что на жс дико нереальный спрос >Показывает гугл график запросов, которые делают миллионы девелоперов, хайп, пиар, жс на сервере, вот это все делает дикий скачок >В реальном мире работы, вакансий дела обстоят иначе, за пруфами на stack/github careers, и любой фриланс сайт не снгшный. На всякий случай еще раз пердану тебе в ебасосину и в рот насру тугой струей жидкого дерьма.
function execute(command, callback) { var process = require('child_process'); process.exec(command, SetImmediate(function callback(err,stdout){ if (err) { return callback(new Error("Error has occured")); } return callback(null,stdout); })); } посоны почему этот код подвешивает сервак?
Нужно, чтобы в элементах <text> и <example> оставалось то, что написано, по-этому используем ng-transclude. Но как не используя шаблон (или использую, но чтобы в эти элементы <text> и <example> не добавлялись новые, которые используются в шаблоне), добавить атрибуты и оставить то, что написано в элементах в хтмл?
>>531512 Ты слишком тупой чтобы семенить, попробуй ещё раз. >Assuming a somewhat pedantic definition, it is technically impossible to create a 2d array in javascript. But you can create an array of arrays, which is tantamount to the same. >which is tantamount to the same.
Привет, ребята! Хочу за месяц стать JS джедаем (более менее) Программирую уже 5 лет. Не знаю, с чего начать. Хочу устроиться с прикладного программиста в JS веб программера.
Анон, есть нестандартное дельце. Пока пишу в джс-тред, но вообще хз, куда писать. Суть в том, что родителям пришло странное письмо, под видом какого-то договора, в приложении был архив, в архиве — типа договор "блаблабла...блабла.docx.js"
Разумеется, они щелкнули на эту хуйню, и теперь неизвестно, что она вообще сделала (кроме открытия ворда с кучей рандомного юникода). Ниже код, который был ещё хорошенько застелен комментариями со случайными хексами, видимо чтоб рандомный юзер нихуя не понял.
Но я не понял тем более! Вбив содержимое массива в декодер, стало видно, что там какой-то код, который потом пихается в евал, и короче это всё очень жестко обфусцировано. Есть способ хотя бы примерный понять, что творит этот код?
Благодарю за помощь с двумерными массивами, я решил создать объект {0:{0:undefined},1:{1:undefined}} вместо массивов с которыми (во всяком случае у меня) не просто.
Теперь другой вопрос, так как в js я мягко говоря не эксперт (иначе бы не спрашивал фундаментальных вещей, но время поджимает).
Есть одна проблема с методом draw. Я рисую объекты, предварительно группирую их в стэк и после отрисовываю их очередью очевидным образом
Разумеется, я сохраняю в кэш предыдущие отрисовки и если они повторяются, то я их не перерисовываю.
Тем не менее, на экране сейчас не так много объектов, меньше тысячи, причём большая часть даже не анимирована и всё равно загрузка CPU может достигать больше 10%, что мягко говоря многовато, учитывая, что я поставил таймер отрисовки на 10 раз в секунду. Я тестировал, когда ставлю 60 кадров в секунду, процессор загружается на 20-30% в зависимости от характера сцены.
Вопрос про оптимизацию (я бороздил гугл там пишут не про данную ситуацию и нет ответа на вопрос про распараллеливание отрисовки).
Вообщем, если я возьму 2 канваса и на одном буду делать половину всех вызовов отрисовки, а на втором вторую часть, создав для каждого свой процесс таймера будет ли это быстрей и вообще будет ли это выполняться параллельно или всё равно будет та же очередь + накладные расходы на два потока таймера?
>>531669 Если объект salaries будет пустым, ты цикл по сути на запустится, поэтому переменная maxName не перезапишется, а останется пустой строкой, в следствие чего (maxName || "нет сотрудников") будет приведено к (false || "нет сотрудников"), а если первый операнд у || является falsy значением, то будет возвращен второй операнд. Примерно так.
Сап пр, я нихуя не понимаю в программировании, ну блок схемы, циклы там, это мне еще более менее понятно. Я задумал сделать бот или хуй знает вообще что, погуглил, и нашел плагины для мозиллы типа greasemonkey, imacros, ну и несколько прог подобных. В общем хочу сделать простой скрипт для для автоматизации действий на сайтике но чтобы он в зависимости от содержания сайтика делал соответствующие действия. Так вот, как я понял сами по себе эти проги логики не предусматривают, и засовывается туда это с помощью языков программирования. В интерете как то маловато инфы, или я еблан, ничего не нашел нормального, подскажи чего нибудь анон, может ты уже знаешь годный ресурс про эту тему, или может даже обьяснишь каким хуем заставить эти плагины\проги понимать, что если на кнопке написано "пизда" тогда надо в неё тыкать, а если написано "жопа" не надо тыкать. Наставь на путь истинный, анон.
>>531905 Тестовый сценарий выполняет команды последовательно, одну за другой. Язык команд Selenium не поддерживает задание условий (например, “if-else”) и итерацию (например, “for”, “while”).
А мне надо, чтобы поддерживал. Дальше пишут
Существуют три способа управления исполнением тестового сценария: Запуск тестового сценария с использованием Selenium RC и клиентской библиотеки, к примеру, Java или PHP, и использование возможностей этих языков программирования для управления исполнением программы. Запуск небольшого фрагмента JavaScript из тестового сценария с помощью команды storeEval. Установка расширения goto_sel_ide.js.
И вот именно по этому я пришел сюда. Что все это значит, что почитать, и как лучше сделать, чтобы поменьше ебаться ? Алсо, спасибо анон.
>>531595 >Exception: ReferenceError: ActiveXObject is not defined По всей видимости, эксплойт дырявой технологии от мелкософта. Они через ишака почту читают штоле?
>>531932 Там в нём много разного есть. Штука такая WebDriver. Это банально автоматически управляемый твоим скриптом браузер, со всеми for, while, if, со всеми возможностями языка. http://www.seleniumhq.org/projects/webdriver/
Собираюсь делать фронт: от сервера по вебсокету получаю данные, отображаю их в относительно статичном виде (графики, поля с текстом, кнопки, индикаторы, можеть быть табы). Какой фреймворк лучше использовать и почему? Начал гуглить про графики... глаза разбегаются. Хочется именно сделать "правильно" от части в образовательных целях и для дальнейшего развития.
>>532204 Сейчас популярен реакт + redux. Реакт очень сильно набирает обороты, работу сейчас весьма легко найти даже если ты начинающий разработчик. Даже не думай трогать ангуляр 1.х - эта экосистема загнивает с каждым днём, у неё нет будущего. Пока что на реакте простительно писать говнокод, простительно не тестировать код, всё простительно, вкатится очень легко. Я бы на твоём месте выбрал реакт, redux и express для бекенда.
>>532204 "Правильно" подразумевает единственный вариант решения. В программировании такое редко бывает, тем более, когда используются такие языки как javascript, где очень много свободы. Обязательно используй модули (browserify) и асинхронность (bluebird). Для графиков можешь юзать, например, https://github.com/mbostock/d3/wiki/Gallery
>>532239 >"Правильно" подразумевает единственный вариант решения. Нет. Слово правильно используется чаще в конексте, где есть один вариант решения, но это не значит что оно используется только в этом контексте. Ещё правильно бывает синонимом слова хорошо. Так что нет. Просто нет. >Обязательно используй модули (browserify) По-моему лучше использовать webpack + npm скрипты заместо галпа с browserify. Тем более если используешь реакт, потому что тогда можно использовать hot loading и вообще удобно.
Ждаваскриптаны, подскажите, как можно решить такую задачу. Обычный CRUD на node.js + express.js, вьюхи на jade. Хочу чтобы было что-то вроде /posts/1/edit -- edit поста. А когда заходишь на /admin -- грузится SPA на, ну пусть будет, backbone.js и уже всё это дело работает со своим роутером, так чтобы пути вида /admin/posts/1/edit работали. Как такое сделать и возможно ли это? То есть хочу всю интерактивность SPA на админке и в тоже время иметь server side rendering без всяких PhantomJS на публичных страницах.
Была, кончено, мысль сделать приложение с rest api, а на отдельном поддомене запилить SPA, но вдруг можно обойтись.
>>532312 Очевидно тебе нужен react-router, react и redux. Backbone - это 2013 год, т.е. это было чуть позже большого взрыва, очень давно.
Если у тебя есть какая-нибудь задача на фроненде, то скорее всего её лучше решить с помощью реакта. Через год реакт станет популярнее jquery, вот только про него не будт создавать странички вроде http://youmightnotneedjquery.com/ потому что тебе всегда нужен реакт.
А ещё используй красивые url, чтобы не posts/1/, а posts/why-react-is-master-race/.
>>532328 Олсо, учитывая, что реакт это всего лишь В в МВЦ, правильно ли считать его кастрированным ангуларом, например?
Простите, если вопрос вам покажется глупым, просто я чайник в этих фреймворках и библиотеках, так что надеюсь, что вы не обоссыте меня, а дадите исчерпывающий ответ.
>>532356 Вообще похуй что будет популярнее, важно то что реакт гораздо удобнее.
>>532360 Это неправильно, учитывая то, что тебе никто не мешает создавать компоненты, которые выполняют роль контроллеров. Они могут делать запросы, заниматься роутингом и т.д., и они передают данные вложенным компонентам. А моделью в реакте может быть простой объект, потому что для рендеринга не нужно никаких обсерваблов и колбеков.
Чёт не донал про реакт. Если "инстансы" создаёт сам реакт, а мы можем лишь установить стейт, то как, допустим, обновить стейт при получении данных по вебсокету? Сохранять ссылки на стейты в глобале? Но ведь это наверное нарушает идею реакта?
В общем понял реакт примерно… шаблончики, которые сами обновляют своё значение и не лагают, я меняю только стейт. Это хорошо. Насчёт флюкс не очень понял. Это типа рекомендация по построению связей с реактом? Какую конкоетно либу учить? делориан выглядит неплохо
>>532546 Это кому и при каких обстоятельствах очевиднее-то? По-моему, одно и тоже. Хотя по maxName.length можно подумать, что это массив должен быть. По-хорошему, тогда уж лучше сделать maxName = null сначала.
>>532546 Это кому и при каких обстоятельствах очевиднее-то? По-моему, одно и тоже. Хотя по maxName.length можно подумать, что это массив должен быть По-хорошему, тогда уж лучше сделать maxName = null сначала.
>>532598 Нихуя ты не понял, реакт это view БЕЗ шаблончиков.
А флукс это бесполезная хуйня, про которую все решили, что это должно быть так же круто, как и реакт, и высрали тысячи реализаций. Вся суть флукса умещается в 30 строках кода.
А что вы скажите про тайпскрипт? Мне нравится идея, но вот напрягает необходимость в .tsd файлах - их муторно писать, ведь нужно заглядывать в исходники каждой зависимости и определять типы, а зависимостей много, они меняют свои API довольно часто... Но я всё равно хочу использовать тайпскрипт.
Вот что можно делать на JavaScript если увлекаться физическим моделированием. Никаких движков и фреймворков. Завидуйте рабы, на работе никогда не будете заниматься таким :3
>>533454 >Со мной все будет хорошо? Да. Ты встретишь девушку, с которой вы похожи, вы начнёте встречаться, потом тебя пригласят на работу в европку, будут платить много денег и не напрягать, а ты будешь отдыхать в своём роскошном доме.
> тебя пригласят на работу в европку check > будут платить много денег хуй > и не напрягать check > будешь отдыхать в своём роскошном доме хуй > Ты встретишь девушку check > с которой вы похожи check > вы начнёте встречаться хуй
Ананасы, кто шарит по bower-у: можно как-то прихуячить в папку со всеми пакетами какой-то файл типа listOfAllPackages.json, в котором будут ссылки на все пакеты перечислены, и при откротии проекта в WebStorm они автоматически подгружаться будут, чтобы по 100500 файлов каждого модуля в гит репозиторий не заливать, а залить только ссылки на них? Имею в виду что-то наподобие packages.config файла у Nuget-а.
Котаны, пишу игру на DOM Хочу сделать более-менее динамическую подгрузку спрайтов. изначально я не знаю размер спрайта, потому я хочу его определять динамически. Единственный подход, который мне подсказал интернет - var img = new Image img.addEventListener('load', function(){ x = img.x ; y = img.x }) img.src = 'imgs/sprite1.gif' Но это совершенно стремно, потому как это делается асинхронно. Я не знаю, когда мне вернутся значения высоты и ширины, а мне на основе их надо положить элемент в определенную позицию. Как сделать синхронно?
>>533755 Тогда получится, что часть работы по отображению элемента расположена в одном месте, другая - в эвентхендлере, идиотизм. Там дальше другие элементы пытаются ориентироваться на размер... В общем, я так понял, что нельзя. Или загружать прямо в самом начале и начинать работать с этим элементом тупо из эвентхендлера
>>533744 Попробуй промисы. Это те же колбеки, но более мощные. Ну т.е. промисы включают в себя колбеки, функциональную композицию, обработку ошибок и deferred.
>>533744 По моему проблема в том что твои игровые обьекты (я полагаю они у тебя есть) не отличаются от этих Image-ов. А ведь картинки это просто ресурсы которые нужно загружать вначале и все. Не начинай игру пока не докачаются все ресурсы. В игровых обьектах держи ссылки на нужный ресурс.
>>533874 > 220к это если ты свой аналог реакта накатаешь >>533847 сомнительная перспектива столько задрачивать ради зарплаты среднего манагера по продажам
Ананасы, подскажите какую ветку развития выбрать. Выучил я верстку. Делаю всякую хуйню на js/jQuery типа галерей, слайдеров и прочей хуйни очень медленно с гуглом. И есть 2 товарища-советчика: 1) Вот тебе 2 месяца, выучи за них какой-нибудь php фреймворк, лучше симфони. Да хоть cms какой-нибудь, я те дам работу у себя в офисе, забьешь хуй на верстку, будешь работать и дальше учить бэк. 2) Забивай хуй на бэк, доучивай js и иди во фронт-енд. Если начнёшь сейчас лезть в бэк, то будешь слабенькой веб-макакой, нахватавшего всего по чуть-чуть, а толку мало. А со знанием js ты сразу можешь идти на мидла фронт-ендера. И потом, сейчас же есть node.js, так что теоретически тебе меньше времени понадобиться, чтобы выучить бэк на node.js чем php. Сам больше склоняюсь ко второму варианту, не логично было бы бросать верстку и те знания, что уже есть, но хотелось бы услышать ваше мнение.
Учи похапе, ебашь проекты и делай фронт и бек, вкатывайся на фуллстак девелопера, перспектив будет больше. Если умеешь в программирование как таковое, алгоритмы и прочие подобные штуки, то без проблем сможешь писать на обоих языках. Языки это вообще инструменты, посмотри ради интереса вакансии для студентоты на западах, частенько требуют хороших знаний C++, Java и Python. И это всё одновременно и для вчерашних студенто-сосницких, так что справишься. Пили проекты и используй все знания для фронта и практикуй бэкенд Все работаю с гуглами и документацией, только дебилы думают что это что-то зазорное, медленно потому что рука ещё не набита и не знаешь всех тонкостей, написал парочку сраных магазинов будешь клепать их дальше как пирожки.
Можно как-нибудь до элементов добраться не используя вот эти .parent().parent().children().eq(0).children()?
У меня на дивах вот так: <div ng-click="Click($event)"></div> и далее я нахожу элемент через $(e.target) и далее нужно добраться до другого дива, который сосед снизу где-то там в дереве.
>>534078 Он, видимо, один из примеров того, что бывает, когда используешь перегруженный сахаром ультраохуенныйфреймворк/либу.жс без базовых знаний языка, на котором пишешь.
>>534112 >Мне id или классом не попользоваться, там не один див и не два на странице.
И что? Это тебе не мешает сделать такой запрос и выбрать все дочерние элементы любого элемента: (не самая лучшая реализация, просто для наглядности): var parentClass = e.target.classList[0];
Объяснять на техническом уровне чем плоха твоя реализация я не буду. И да, как сказал >>534091 - кун , если ты пользуешься такими громоздкими конструкциями, то что-то не так с твоим кодом. Учи матчасть, короче говоря.
>>534132 > querySelector -- то же, что и $ Нет. Квери селектор возвращает ПЕРВЫЙ элемент. С классами эта хуйня не сработает. Ровно как и с квери селектором ол, который вернет массив элементов.
>>534226 Я написал упрощенное описание, потому что функционал у этих двух функций одинаковый -- поиск элемента по CSS селектору. В некоторых случаях эти две функции не просто эквивалентны, а являются одинаковыми, т.к. если запрос не сильно сложный, то jQuery не использует свой движок запроса по селектору(Sizzle) и поиск осуществляется querySelector/querySelectorAll для оптимизации. Вопрос только в том, что возвращается этими двумя функциями далеко не одно и тоже, отсюда и набор методов для обработки результата разный(сыграл в кэпа).
>С классами эта хуйня не сработает.
Лол, всегда пишу на ванильном js и вдруг узнаю, что с классами querySelector не работает. Может пример покажешь, ЧТО ИМЕННО не работает, быть может я тебя недопонял.
Сап, двоч! Недавно пересилил себя и решил, что пора учиться кодить. Посоветовали Node.js. Обзавелся видео-гайдами, кодакадемом и книжкой. Немного начинают въезжать в суть локальных задач, но глобально - плохое представление, т.е. я не понимаю, для чего это нужно, как, зачем. У меня нет общего видения: какие-то библиотеки, сервера, сайты, зачем джава, что куда, как начать. Что посоветуете? Какую литературу, материал? Для общего въезда.
Объясняю на пальцах. Конструкция типа квериселектоАлл(".класс").стайл.колор = "ред" - работать не будет. То есть мне придется написать цикл, в котором я переберу эти элементы массива к которым я КАЖДОМУ применю этот стайл. С жквери с этой ебалой возиться не надо. Поэтому жкверишный $ это не то же самое, что и квериселекторАлл.
>>534294 Не рекомендую Ноду, чтобы учится кодить, ибо она содержит несколько концепций трудно понимаемых для новичков. Пропиздуй в PHP-тред, там не сложно и работу проще будет найти, если соебрёшься.
Ребят а есть какая нибудь литра чтобы в Явку поглубже заглянуть да и хуярить ее? Очень хочется, дайте мне инфу, ток на русском пожалуйста, а то у меня голова уже от инглиша болит, сижу на академке и ахуеваю. Заранее спасибо!С меня кое что ценное.
Посоны, есть что-то в мире ноды, вроде laravel в пыхе? И если нет, то насколько быстро получится написать обычный CRUD-сайт на каком-нибудь express? Его низкоуровневость меня очень напрягает Давайте выберем самый быстрый для разработки фреймворк/cmf
Кротаны, продолжаю пилить свою йоба-игру. Встала задача сделать так, чтоб персонаж мог прыгать. Как запрограммировать прыжок? не нашел ничего лучше, чем сделать setInterval(функцияКотораяДвигаетПерсонажаВверхИВнизНаПиксель, 100) Вроде и нормально, а вроде и убого. не будет ли проблем, когда я буду проверять пересечение персонажа с другими объектами в прыжке?
>>534347 Нашел, но все равно НИХУЯ НЕ ПОНЯТНО!Зачем его сделали? Оператор деления по модулю - оператор mod, обозначается символом %. Этот оператор возвращает остаток от деления первого операнда на второй. Функция mod в Java работает не только с целыми, но и с вещественными типами. Приведенная ниже программа иллюстрирует работу этого оператора.
>>534352 Кароче фишка вот в чем, если попадается целое число, то это значение по модулю (%) Тру, если остается остаток тобишь число ака 6%8 то это не Тру, очень удобно составлять алгоритмы?
>>534350 >добавь транзишн для плавности но ведь прыжок персонажа должен влево-вправо управляться. И персонаж в этом процессе может приземлиться на платформу, а транзишн так и продолжит смещать персонажа.
>>534363 > изобретаю велосипеды на каждом шагу Если хочется постичь фронтенд, то постройка велосипедов и потом отказ от них, — это норм. А если тебе надо задачу решить (игру сделать), то используй Cocos2d, или Phaser, или еще что-нибудь.
>>534372 я хочу из прикладного программиста стать фронтэнд разрабом. пока что для меня самое непонятное - это верстка. Еще более непонятное - цсс анимации всякие. Без яваскрипта. Ну и всякие новомодные слова типа HTML5 - я вообще не понимаю, что это.
>>534376 Я не понимаю, чем это все реально отличается от HTML4. Да, я знаю, что появился тег video , но почему HTML5 подразумевает CSS3 , JS и кучу всего еще, хотя по сути HTML5 это очередная версия языка разметки SGML, кажется - я хуй знает.
>>534385 В HTML5 добавили кучу тегов для медиа, нативную поддержку медиа, короч. Если раньше проигрывать музон, показывать видео и играть игры можно было только через флеш, то сейчас голый html это поддерживает. Новый упрощенный доктайп, новые семантические теги (nav, article, footer etc). Вот основные отличия html4 от html5.
>>534391 И как все это выучить? Ты не подумай, я так-то могу что-то сверстать, просто часто бывают подводные камни, я иногда сталикваюсь и хуею. А еще огромный выбор - реализовывать какие то эффекты голым js или же через css3 , а через цсс 3 можно сделать дохуя! Но как - абсолютно непонятно. Видел кучу цсс анимаций но так и не понял, как эти простыни цсс работают.
>>534395 Легко блять...Если оно тебе надо - Занимайся и получай Бобос, можешь потом в гугл пойти, всего лишь со знанием HTML5 и делать там оптимизацию оверлея и.т.д А если не хочешь знать, то этим займутся и другие ебанаты.
>>534395 На гитаре тоже нужно уметь играть и потратить хуеву тучу времени. Вон у меня знакомая захотела делать себе сайты и прочее, обоссалась на верстке, прямо как ты.
Господа, я дрочу JS года пол, ВСЕ по англоязычной литературе, открыл русские книги из ОП поста и понял, что я очень хуево понимаю, что там написано. Собственно вопрос: это у нас так хуево переводят\доносят мысль или я просто привык к англ. языку?
Просто код становится трудночитаемым и к тому же, он очень усложняет поддержку всего проекта. Представь, если я захочу переставить этот элемент на другое место, то мне придётся лезть ещё и в JS, чтобы опять провести манипуляцию с DOM. С классом такой хуйни не будет.
Handlebars говно какое-то неюзабильное, с этим ебанутым parent context (до которого можно достучаться только через "../") и необходимостью впиливать кастомные хелперы, чтобы достутчаться до динамических пропертей / нормального if / любой другой банальной хуйни, которая в любом шаблонизаторе работает из коробки.
>>534648 Ну а именно читается просто, если выражение до знака вопроса, т.е. первый операнд, равно тру, тогда возвращается второй операнд, если нет, то третий. Собственно поэтому это называется тернарным оператором, т.к. участвуют три операнда.
>>534712 Перекатился с пыхи на ноду. Я даже не знаю как их можно сравнивать, это просто две фундаментально разных экосистемы. С нодой веб воспринимается вообще иначе. Такая годнота. Божественный синтаксис с кучей сахара (использую кофескрипт), космическая скорость (из-за ассинхронности) и годный фреймворк sails, который генерирует за тебя mvc одной командой. Хуй меня заставишь теперь что-то на пыхе писать. Лучше умереть.
>>534712 Потому что нода работает непрерывно, а не отработал-умер как пхп. У ноды удобный синтаксис, а у пхп ебола, хотя тоже терпимая. К ноде есть масса модулей на все случаи жизни, а к пхп - только комплексные решения, где придётся тащить кучу ненужного хлама. Нода активно развивается, а пхп выезжает только на уже созданных технологиях. Средний нод-разработчик получает в два раза больше среднего пхп-разработчика.
>>534740 И ты не отличаешь синтаксис от типов данных переменных? В кофескрипте мне нравится питоновская табуляция и отсутствие уебанских сишных скобочек, которые очень тормозят и затруняют написание кода.
>>534750 Я про божественный синтаксис кофескрипта говорил. Нативный он такой же уебищно-сишный, как и в пыхе. Но в жсе это фиксится, в отличии от пыхи.
Написал простой таск для glup, в логe ошибок нет, все прозодит нормально. Проблемма блядь в том, что в ./build/css НИХУЯ не появляется, абсолютно. Уже час сижу и пробуюу понять какого хуя происходит, помоги плиз.
>>534773 Разобрался, по ходу точка перед названием путем к файлу все портила. Посылаю лучи поноса авторам доков к gulp-sass и лучи добра автору gulp-debug.
>>534767 А могли бы сразу язык нормальный зделоть, целый консорциум всё-таки заседал. Пых, конечно, инфернальный мрак, но его всё-таки один пионер пилил, взяв парсер от няшной.
>>534981 Не точка, а точка со слэшем -- './'. Обозначает текущую директорию. Проверил на npmjs.com плагин, там просто точка не стоит, т.е. ты сам обосрался с копипастом.
P.S. Вот из за таких хуесосов-школьников как данный товарищ >>534974 этот тред (да и вообще вся борда) превращается в помойку.
>>535008 Ты тоже иди нахуй, пидорас. Один даун, другому помогает, который блять ЧАС ЦЕЛЫЙ НАХУЙ ЧАС сидел и не мог врубится в чем проблема, и не знал, что точка на что-то виляет и даже не додумался её убрать. И при этом овбиняет разрабов плагина к галпу, пиздец уебан.
>>535008 Если бы он просто спросил, то думаю никакого бугурта ни у кого не было, а такая херня: >Посылаю лучи поноса авторам доков к gulp-sass реально настраивает против таких людей.
>Даунидзе, если ты не в курсе > Ну не ахуел ли ты, иди гугли, пидорас
, нормальных, шарящих людей в этом треде мало из за такого говна, потому что даже писать ничего не хочется, когда видишь беснующихся ХТМЛ5ЦСС3ДЖЕКВЕРИ макак. И так представителей профессии из за таких уебанов считают высокомерными хуесосами.
И да, уёбок >>535014... А впрочем иди-ка ты в пизду.
>>535020 Соси хуй, быдло ебаное, хуйни понаписал ты защищая ленивого дауна, для которого добрые люди плагины пишут, а он их обсирает из-за тупости своего усохшего мозга.
Если сменить тему сосача на NEUTRON, к примеру, а потом экспортировать настройки (будет что-то типа {"other":{"myboards":{"list":{"b":"/Б/ред","po":"Политика и новости","mmo":"Massive multiplayer online games","vg":"Видеоигры","d":"Дискуссии о Два.ч"}}},"_cache":{"media":{"youtube":{"b2F-DItXtZs":{"title":"Episode 1 - Mongo DB Is Web Scale","created":1440533729}}}},"styling":{"style":"neutron"}} ), то после импорта, подгрузится эта тема.
Я пытался сделать простенький юзерскрипт, с автоимпортом этих настроек, но без понятия в какую сторону копать.
>>527499 Дак в том-то и дело,что чтобы устроиться на работу, нужно как мтнимум парочку самых популярных фрймворков знать. У меня в миллионнике нарример на хх около 10 вакансий фронт-енд. И все они для опытых людей. Вот как вы устраиваетесь на третьем курсе, а я на четвертом не могу?
Привет, почаны. Наверное этот тред наиболее подходящий для моего вопроса.
Расскажите мне пожалуйста про защиту, встроенную в браузеры, от cross-site request forgery.
Допустим есть одна имиджборда imageboardname.tk, на которой не нужно вводить капчу, чтобы оставить пост. И есть мой сайт pupkin.me. Могу ли я создать джаваскриптовую программу, которая будет подгружаться у любого посетителя моего сайта pupkin.me, она будет слать GET запрос на imageboardname.tk, как-то парсить страницу-ответ, вытаскивать оттуда нужную информацию и посылать POST-запрос с этой информацией на ту же imageboardname.tk, который публикает там пост, подменив всякие там referrer и прочее, чтобы на pupkin.me ничего не указывало?
>>534785 Жс тоже был запилен пионером за 10 дней. Из-за этого столько нелогичной хуйни, с которой из-за огромного количества легаси остается только смириться.
https://news.ycombinator.com/item?id=10123352 Наконец-то и на мою улицу праздник приходит, hooray! >I can't find one reason why ES6 and component-like architecture wouldn't be chosen "often" for projects? >Choosing React and using it for everything sounds like a great idea to me, since you can transfer your knowledge from larger projects to smaller one >Pinterest just switched to React. >Netflix just switched to React. >Yahoo is moving to React as well. >There are smart people out there not choosing React. Not for long. >No. I <3 React Для всех js-нубов должно быть ясно в какую экосистему нырять. А это ещё реакт-нейтив не вышел. Я уже видел вакансии по нейтиву, лол.
>>535478 А как это узнать? И что именно там пойдет не так, если эта штука не включена? Я отправил POST запрос со своего наебательского сайта, в него будет включен какой-нибудь текст, говорящий, что он на самом деле с pupkin.me, и браузер не даст эту штуку убрать? И тогда imageboardname.tk из-за этой штуки отклонит post?
>>535489 А как он узнает про Access-Control-Allow-Origin на imageboard.tk? Он совершит заранее какой-то запрос на imageboard.tk и спросит, разрешено или нет?
>>535485 Кек, ещё и ментов сразу на тебя вызовут. Какой-то ты паранок, наркотой приторговывать хочешь? Браузер просто не выполнит ничего, так как ответ будет чем-то типа 405 Method not Allowed или cross-origin request blocked. Allow CORS or smth smth.
Ананасы, обращаюсь к вам т.к меня дико заебал сраный плагин https://github.com/wix/angular-tree-control для рендеринга деревьев в ангулареа лучше для моих целей нихуя пока не завезли. Бесит, что эта мразь не даёт задать кастомные иконки в зависимости от свойств каждого узла дерева. На приклейтед изображена структура разметки http://i.imgur.com/WlP6aNf.png, может кто подскажет выход или какой-нибудь css selector с помощью которого я смогу достучаться до сраной иконки и изменить её?
>>535605 Взял бы да посмотрел код клик-эвента по кнопке импорт — http://pastebin.com/LACxPeyq Если хочешь тут же и применить тему, без перезагрузки страницы, но смотри на код, исполняемый при выборе стиля — http://pastebin.com/cyAQHwst Благо макака обфускацией не болен и весь код максимально прост и ясен.
Помогаем освоиться с языком, решить проблемы с кодом или выбрать IDE, а так же лампово общаемся на околоайтишные темы. Что бы попасть к нам, пишите на [email protected]Нас уже 41 и мы собираемся расширяться. (конфа на слаке)
>>535863 От к конторы к конторе, в некоторых от верстальщика требуется только верстка, то есть HTML + CSS и сопутствующие фреймворкии технологии. В других ты должен уметь на js писать всякие галерейки, карусельки и вообще дохуя всего сверху и тебя всё равно будут называть верстальщиком, хотя в другой конторе ты уже считался бы junior. Но на мой взгляд рациональное разделение примерно такое: Верстальщик: HTML, CSS + фреймворки типа bootstrap. Никакого программирования, разве что плагины прикрутить в редких случаях. Frontend-junior: добавляется js, ajax и т.д. Но это я с дивана вещаю. Сам ещё не работал, прошел собеседование на верстальщика, но предложили 15к смешные, я отказался и пришел сюда.
>>535624 Клик-эвенты я смотрел. Почитал сваг.жс. Как ты написал о смене стиля это понятно. Но я немножко не то хотел. Как вставить экспортированную строку настроек в код юзерскрипта, чтоб при загрузке страницы эмулировался импорт этих настроек, как если бя я полез в настройки и вставил эту строку. Вот в чём вопрос. Но и я конечно туп, иначе не спрашивал бы.
А теперь вопрос. Писал ли кто-то приложения под андроид на жсе? Какой там самый годный фрейм? Над для себя приложение одно написать, не учить же жабу теперь.
Есть такой код в воркере: [code lang="js"] var xhr = new XMLHttpRequest(); xhr.open("get", url, false); xhr.send(null); [/code] Чому это работает: [code lang="js"] var url = "https://www.googleapis.com/youtube/v3/videos?id=" + videoId + "&key=" + apiKey + "&part=snippet"; [/code] А это нет: [code lang="js"] var url = "https://www.coub.com/api/oembed.json?url=" + href.replace(":", "%3A"); [/code] То есть в первом случае xhr.status == 200, а во втором - 0.
>>535918 Ну да, неплохо. Это же такой тест на тупизну, чем быстрее учишься, тем быстрее больше получать начинаешь. Если нет, предел 15, уж извини. Сегодня верстка, это как умение для конструктора по госту чертеж оформить.
>>535875 Ну так строки localStorage.store = (содержимое той строки) Store.reload() там для чего, по-твоему? Это и есть сохранение в локал сторедж и настройки сайта.
Почему жслинт выдает аж три ошибки при попытки теста ноды? var http = require('http'); var static = require('node-static'); var file = new static.Server('.');
>>535934 http://hastebin.com/azacihucih.avrasm Вот это работает, но только на сайте coub. Со своего сайта у пользователя ты такие запросы делать не можешь -- Access-Control-Allow-Origin
>>536036 Скорее всего, плагин просто заточен под работу с браузерным жс. Жс в ноде и браузере всё-таки немного, но отличается. Погугли "node linter" для своей ide
>>536064 Сап, джусаны. Куда податься погромисту на js со знаниями самой ванили, ноды, аякса, джейкуэри и всего этого? Нашел тут вакансию http://mkechinov.ru/225.html, но я не могу в html/css. Звонить им прямо сейчас или подтягивать знания? Если подтяну, то буду более востребован на рынке?
Эй макароны абоссатые. Какой из ангуляров сейчас самый развиваемый и документированый? Надо захуячить на клиенте модели контролеры и темплейтинг и чтобе лесс был. Это вообще реально на одном говномакаронном фремворке или собирать лисапед из бакбонов с мочой и говном?
>>536068 Сам таким был. Т.е. верстать-то он наверное может, но медленно, не знаеют мультибраузерных адаптивных css-трюков, и без всяких наворотов, вроде анимаций, css3 фич т.д.
Есть один говносервис с бакендом на <языкнейм> и клиенты на ведре и пидорОС. Заказчик хочет веб интерфейс. Я ебал этот ваш веб. Но кроме как хуячить на ссаных ангулярых-бекбонах нихуя поверх рестлес-апи не смастеришь. Заглянул в доки этих ангуляров блеванул от жс. Как вы это говно жрете это же пиздец а не язык.
Итак вопрос на каком говнофреймворке делать вебклиента поверх рестлесапи?
>>536085 Что на гитхабе? Я могу генератором кода всякой хуйни туда понапихать с разными интервалами времени и таким образом нахуярить дохуя сайтов и приложений. Неужели такое прокатит?
>>536098 Да, почему нет? Покажешь дату своего первого коммита - вот и твой опыт работы. Ну и немаловажно, чтобы твои проекты были хоть немного востребованными. Чтоб форки/звездочки были какие-то.
Джиэсники и похаперы, вот вы постоянно разводите срачи, но нахуя? У вас языки почти одинаковые одинаково хуевые (как и все, ориентированные на веб), вопрос → нахуя?
Привет, вопрос по разработке веб-приложений: раньше разрабатывал только веб-сайты - портфолио/dbpbnrb на html,css,php,javascript. Сейчас хочу разработать веб-сервис (попутно выучить что нибудь из новых модерновых фреймворков и nosql). Стоит ли изучать angularjs, nodejs, mongodb. Можно ли это будет увязать на сайте с bootstrap+angularjs+nodejs+mongodb? Или можете посоветовать что то получше?
>>536170 Потихоньку меняют же. ES6 вон, вся хуйня. Но координально ничего поменять не могут, ибо легаси. Вот и решают эту проблему кофескриптами. И неплохо решают, кстати.
>>536171 Чем они отличаются в плане веб-разработки? Есть два скрипта, написанных на дж и на кофескрипте, они будут отличаться по скорости, по еще чему-то?
>>536031 jslint пишет, какие именно ошибки. jslint можно настраивать, и какие настройки у тебя, никто не знает. Подозреваю, что 1. после new конструктор с маленькой буквы 2. используется console.log 3. отступы проебаны
var num = 2112; var str = "На ветке сидит " + num + " ворон"; var x = ""; if (num%100 < 11 || num%100 > 14) { switch(num%10) { case 1: x = "a"; break; case 2: case 3: case 4: x = "ы"; } }
>>525206 (OP) >nodejs Маньки просто всегда думают что нашли серебряную пулю внутри вакуумного коня.
Когда-то в юности Манька легла под PHP, визжала что он её жизнь и татушку даже набила с его именем. Однако выяснилось что при любых проблемах PHP уходил в запой и переставал отвечать на звонки.
Потом она к Ruby ломанулись свататься, думая что вот оно - щастье. Но Ruby оказалось суровый азиатский мущщина и манькин ноускилл в варении масштабируемых борщей ему на пользу не пошёл - бедняга блевал и выглядел совсем несолидно несмотря на все свои достоинства.
Манька заверещала что он тупорылый азиат и побежала теперь в обьятья Node. Node - очень простой и даже туповатый чел, но Манька подумала что раз он оттрахал уже пицот девок с фронтедового микрорайона - её-то уж он точно осчастливит.
И вроде бы всем кроме Маньки всё понятно. Но Манька продолжает скакать с хуя на хуец, закатывая потом истерику какой её бывший козёл и говно. Такова её судьба, такова судьба всех дур.
Решил прикрутить сигналр к своему проекту. Охуел, когда узнал что они уже 3 года не могут съехать с jquery. Я не против жкваири, но ради сигналр тащить его нехочу. Нахуй так жить?
>>536416 var foo = {} — это объект. (Являющийся, по сути, чем-то вроде словаря). Соответствено, в теле объета должны быть имена свойств и, собственно, значения этих свойств. Ну а второе это функция, в ней уже что хочешь, то и пишешь. Вообще, довольно печально, что ты такой вопрос задаёшь спустя неделю. Чем же ты там занимался?
>>536416 В первом случае {} обозначают объект, внутри них может быть только конструкция вида `свойство: значение, свойство: значение`. Во втором это функция, в ней может быть всё то же самое, что и во внешнем коде. Но значением в объекте может быть хоть функция, хоть другой объект.
Паrни, посоветуйте мне задачки на всякие функции и т.д. для js, чтобы руку набить. А то понимаю только тогда, когда препод что-то сам решает, а сам не очень понимаю, как.
>>536557 Нудновато немного. Начиная с определенных, задачи становятся «на знание», такие, которые не решишь, не зная матаппарата, который лежит под задачей.
>>536663 Блеать. На лерн.яваскрипт написано это. Мол, этих вещей больше нет у яваскрипта, дескать, они когда-то были, верно? Отсюда и следует вопрос: а куда они, блять, исчезли, а? Куда, нахуй?
>>536684 Пиздец, тебе пыха все мозги съхела видимо.
То предложение, которые ты выделил, означает, что КРОМЕ жса всех трех технологий вещей ни в одной технологии нету, а нет то, что в жсе их больше нет. Пиздец, какую хуйню приходится тут объяснять вам идиотам.
>>536686 >>536687 Ну еб твою мать, так бы сразу и сказал. Я тут на жс переучиваюсь нонстопом, советов мудрых прошу, а этот пидор меня стопорит, ну не пиздец ли, ноданы? Добролучистых снов тебе, макака.
Что-то я не могу разобраться настолько, что у меня бомбить начало. Зачем добавлять зависимости ['myApp.controllers', 'myApp.directives'], почему без них не работает этот элементарный пример?
>>536807 В общем они нужны, что бы подгружать директивы и контроллеры. Имена можно задавать произвольные. Хуй знает почему я раньше нигде на это не натыкался, наверное крыша едет от беспрерывной учебы.
>>536868 Sublime Text же. Простой и удобный с костылями. Стрикт режим в туториале был. В общем то он не нужен здесь, но сохранил всё как есть. Алсо, я так и не понял почему эти зависимости иногда используются, а иногда нет. Где бы ИМЕННО про них почитать...
>>536890 Расскажи мне, зачем фронтэндеру вообще изучать что-то серверное? Если уж хочется пощупать бекэнд, то налегай на node.js. С нодой веб воспринимается вообще иначе. Такая годнота. Божественный синтаксис, космическая скорость, годный фреймворк sails, который генерирует за тебя mvc одной командой. Хуй меня заставишь теперь что-то на пыхе писать. Лучше умереть.
>>536888 Хули тогда ты пиздишь, на learn.javascript.ru нету про ангуляр ничего, причем здесь переменные и прочая хуйня? Не разбираешь - захлопни варежку.
Поясните за VIM, яваскриптаны. Насколько удобно им фронт-эндить? Я пробовал начинать несколько раз, но все его удобство, за что нахваливают, а именно отсутствие необходимости юзать мышку, сводится на нет, потому что постоянно. после внесения изменений в код, берешь мышку и тыкаешь бровзер.
Блять, ебучий js. Схуяли у вас идет все по порядку, а привязанные циклы к функциям нихуя не обрабатываются?! ПОЧЕМУ? КАК ВЫ ЖИВЕТЕ? Почему это говно работать будет... <script> var value = prompt("Ты пердолишься с JS?", "");
>>537017 Ну, я пока что перекатываюсь с пыхи, как и ты, кек. Код ноды смотрел, но пока у меня летчик.png от нее. Сначала специфику языка выучу, потом за ноду возьмусь.
>>537012 >var value = prompt("Ты пердолишься с JS?", "") { Что это за фигня вообще должна быть? И какие ещё циклы? у тебя нет циклов в коде. И к чему привязанные? Ты языки попутал, по-моему.
>>537020 >Что это за фигня вообще должна быть? Функция "prompt" принимает 2 параметра. Внутри нее цикл if-else. Цикл привязан к функции через тело функции в {...}. Что-то не так?
>>537024 Ээ.. Всё не так. Ты вызываешь эту функцию промт, а не декларируешь. Ты не можешь и вызвать функцию, и ещё тело её изменить, ты чо там, арбузов переел, что ли? А создавать функции либо function func(args){}, либо var func = function(args){}.
аноны, сап, знаю, что сейчас пошлете отсюда и закидаете ссаными тряпками, но я вдруг поняла, что программирование это то, чем я смогу прокормить себя и что мне срочно нужно освоить как найти курсы в своем городе? как понять, что они не всратые, а реально могут чему-то научить? мне 21, я иду на 3 курс универа, еще параллельно работаю 2\2 полный день :С боюсь, что дома пошлю на хер это, поэтому надо, чтобы кто-то со мной занимался
>>537057 Зачем тебе курсы? Лезешь на рутрекер, качаешь обучающие видео уроки, качаешь книжки из оп-поста и учишься.
Я тебе даже могу сам план составить курсов этих. Урок 1 - Что такое жаваскрипт Урок 2 - Переменные Урок 3 - Массивы Урок 4 - Объекты Урок 5 - Функции Урок 6 - Понимание ДОМ модели Урок 7 - Библиотеки, жКвери Урок 8 - Заключение
Это ничем не отличается от типичного видео курса. Самое главное в этом деле - практика.
>>537066 а где практиковаться потом и как найти работу? то есть, придя на собеседование, я покажу свой диплом ГЕОДЕЗИСТА и скажу, что господа, спокойно, я учила все сама? И вообще насколько важен диплом при устройстве на работу?
>>537070 Диплом не важен. Тебе задут хитровыебанные вопросы или просто дадут тестовое задание. Я сам по специальности аналитик, но работаю во фронт-энде.
Учился сам, да. Фрилансил, клепая говносайты, пока однажды не взяли в студию, опять же потому что сделал тестовое задание.
Пока учился и фрилансил - работал по специальности.
>>537071 хм, то есть самой освоить все вполне реально, если даже мозг уровня мартышки? в институте мучили какими-то херями в ворде, где надо было что-то программировать, я убежала в слезах с пар и потом платила дабы поставить эту ересь
Какого хуя, апи твиттера, отдает координаты, вида, "долгота и широта", а, апи, сука, гугл мапс, принимает координаты, для нахождения на карте, блять, "широта и долгота"? И что делать?
>>537066 Бро, ты извини, но у тебя как-то все в кучу. Не поленился, расписал все как должно быть, в максимально правильном порядке. Можете юзать.
Часть 1. Low level newfag - Основы js.
Урок 1 Основы программирования Урок 2 Управляющие конструкции Урок 3 Функции Урок 4 Объекты и массивы Урок 5 Использование объектов Урок 6 Объектно-ориентированное программирование
Часть 2. Middle level wannabe-oldfag - Основы js 2.
Урок 1. Объектная модель браузера Урок 2. Использование элементов HTML с JS Урок 3. Объектная модель документа: DOM Урок 4. События и их обработка
Часть 3. medium high level like-oldfag - jQuery
Урок 1. Введение в jQuery Урок 2. События и манипуляции с элементами Урок 3. Анимация в jQuery Урок 4. Практическая работа с jQuery
Часть 4. High level oldfag - AJAX
Урок 1. Основы AJAX Урок 2. AJAX и HTTP Урок 3. JSON Урок 4. Использование XML. XML-RPC Часть 5. Использование XML веб-сервисов. SOAP Урок 6. Безопасность и эффективность AJAX приложений
Часть 5. Ultra high level semi-god - NODE.JS
Урок 1. Основы Node.js Урок 2. События Урок 3. Потоки Урок 4. Модули Урок 5. Фреймворки Express/Sails (советую второй) Урок 6. Socket.IO Урок 7. Создание веб-приложения
Часть 6. Ultra high level god - HTML5 API
Урок 1. Геолокации Урок 2. Фоновые вычисления Урок 3. Работа с локальными файлами Урок 4. Drag-N-Drop Урок 5. Хранение данных в браузере: а.локальное и сеансовое б.база данных Урок 6. Canvas
>>537073 >освоить все вполне реально, если даже мозг уровня мартышки если правда как у мартышки, то вообще-то нет. если это просто такое самоуничижение публичное, для красного словца, то во фронтэнде аццкий матан не нужен, там все довольно просто. единственное, хорошо бы знать ангельский на том уровне, чтобы документация на нем вопросов не вызывала. к вопросу о специальности, геодезисты по идее должны шарить в картографии, это очевидный плюс в конторах, где имеют дело с картами, сейчас таких довольно много.
>>537073 >если даже мозг уровня мартышки? "Мартышки" это ирония. Такой троллинг для нубов. Иначе бы в конторах и правда работали всякие бомжары да макаки за корку хлеба.
Попробуй поднакопить знаний, сесть и решить какую-нибудь тривиальную задачу, чат там свой напиши, хранилище медиафайлов. Попытайся сделать его максимально удобным и быстрым. Если у тебя получится не кинуть это дело при первых же трудностях, и тебе будет интересно искать решение, то все вполне реально, свое решение кидай на git и пиздуй устраиваться. Но чаще приходится наблюдать как люди обсираются на первой же попытке и говорят "это не мое".
Мне одному тяжело дается js? Не считал себя тупым никогда, но теперь вот check. По лернжс.ру занимаюсь, теорию понимаю, решение упражнений в теории понимаю, но на практике сижу как дебил час над задачей. А ведь это только начало. Кто был в такой ситуации? Нужно больше концентрироваться на материале/больше читать из разных источников может быть?
>>537499 Можно подумать, например, почему именно час сидишь над задачей и что конкретно не понимаешь: математики не хватает, знания встроенных фукнций или модулей, не можешь в голове в общем представить, как задачу решать?
>>537541 Ну вот есть задача. Например, сделать такой-то массив, так вот его отсортировать. Я вроде бы знаю, вот такая функция, вот это в ней написать. Я не смог догадаться сам, что вместо а - b, нужно в функции прописать ключ. a.blabla - b.blabla. Этого в теории не было, а сам я догадаться не смог. Математики на таком уровне нет, вот скорее паттернов не хватает. Я решение смотрю и в 100% случаев понимаю решение, до каждого символа. Не знаю, быть может не хватает концентрации во время самого решения задач.
>>537502 ну честно говоря не очень понятно, чему можно по лернджс научиться, оно скорее справочный материал, как и флэнаган например. в шапке у опа полно более адекватных ссылок. на практике оказывается, что весь код уже фактически написан за тебя (в штуках типа lodash, библиотеках и фреймворках), фактически главное построить (или даже просто выбрать) архитектуру приложения для требуемой задачи -- дальше просто сидишь и кодишь, программирование заканчивается. задачи с мало-мальски сложной логикой в фронтэнде не так часто встречаются. знать синтаксис и основы языка (ну и DOM, это тоже основы, но Айк и авторы ECMA в этом пиздеце не виноваты) -- это как-бы само собой, a вот чтобы начать понимать, что происходит, ИМХО надо обязательно почитать книжки по шаблонам и разобраться с прототипами. ну и поскольку у js очень низкий порог вхождения, тут можно позволить себе сначала написать что-нибудь работающее (сайт какой-нибудь или утилитку на ноде), а потом лезть в теорию и смотреть, почему так никто не пишет. когда пощупал руками, теория сразу в разы понятнее, воспринимается как что-то реальное, а не абстракция.
>>537571 Это со временем приходит, братюнь. Потом сам будешь ахуевать от вариантов, которые сам придумаешь. Я когда начинал кодить на яваскрипте часто в ступор впадал, сталкиваясь с задачами как сделать то или иное. Потом когда уже понимаешь как можно использовать массивы, как можно применять на практике объекты и прочее прочее - решения будут появляться сами собой.
>>537613 Я хоть и сейчас чайник, но когда только начинал изучать ЯС столкнулся с тем, что мне надо было перебрать маркеры гуглокарты и надергать с них нужную инфу. Мне посоветовали затолкать их в массив и уже перебрать его.
Я потом сидел и вдуплял. Думал что мне блядь делать.
>>537932 Ставлю 5 долларов, что потому что тебе вылетает ошибка "TypeErorr: a[n] is undefined" на последней итерации лупа, а ты приходишь за помощь, даже скопировав ошибку. Индексация массивов начинается с нуля, так что последний элемент там будет arr[arr.length-1], меняй условие лупа на "i<arr.length".
>>538009 Да, так все и было, сори за невнимательность, спасибо тебе, анон. Кстати, решил эту задачу через второй массив, сравнивая слова в массиве друг с другом, а в учебнике решается гораздо легче - через объекты, просто в одинаковые ключи записываются разные слова и таким образом фильтруются повторяющиеся. И так еще с какой-то задачей было. Я решал очень сложно, а у автора все простенько через какой-нибудь неочевидный, но красивый ход. Это нормально или я тупой?
Репост из вёрстка-треда. Господа, я пофрилансил, поверстал, прикручивал и кастомизировал jquery плагины, даже немного поиграл с phaser'ом. Решил, что меня ждёт увлекательный мир полноценного фронт-енда. Вопрос о выборе фреймворка не поднимаю, справлюсь сам, но есть пара других: 1) Для разработки полноценных веб-приложений мне нужно хоть как-нибудь владеть бэк-эндом, так ведь? Модель и контроллер реализовывают там, а представление - уже на переднем конце? 2) Какие приложения попробовать написать для тренировки? Гораздо легче учиться для результата, а не ради учёбы.
>>533988 >Все языки без типов данных одинаковы тоже об этом подумал. что js, что php. неразумное корявое говно и убогое дебильное говно. причем жс, как я посмотрел, даже хуже чем php, хотя что может быть хуже..
Ньюфагам:
1. Что это за язык такой? - Мультипарадигменный язык, изначально создавался для использования в браузерах как язык сценариев для придания интерактивности веб-страницам, однако в процессе своего развития преодолел этот этап и сейчас может использоваться для любых целей ввиду своей неограниченной гибкости и удивительно удобного синтаксиса.
2. Это чтобы менять цвета, и вызывать всякие всплывающие окна? - Нет. Это только малая часть того, что может язык. Сейчас, на JS можно делать игры (phaser, cocos, etc.), 3D графику (three.js), можно делать и приложения для телефонов(phonegap, ionic), можно делать десктоп приложения(NW.js).
3. Ну ясно, а че еще можно? - А еще можно использовать на сервере, причем очень даже успешно. А все благодаря платформе Node.js, и v8, который встроен во все хромоподобное. Node.js по производительности и удобству работы превосходит большинство остальных серверных языков.
4. Я щас ничего не понял, повтори. - Проще говоря, если ты делаешь огромный интернет магазин или хай лоад проект, то можешь смело использовать JavaScript и Node.js.
5. А что еще прикольного можно сделать? - А еще есть MVC фреймворки, Angular, Backbone, Ember, Knockout и другие, менее популярные.
6. Зачем оно надо? - Для создания SPA, в основном, но ты можешь копнуть глубже.
7. Очень уж много всяких фреймворков... Нельзя ли просто изучить jquery и писать все на нем? - Не стоит, можешь начать писать на жыквери, когда освоишь ванильный JS, дабы не испортить себе восприятие языка, и вбудущем не испытывать трудностей с изучением сложных фреймворков.
8. Ну ладно, с чего начать изучение то? - Дальше я приложу список материалов для изучения.
Учим JS:
Книги: Дэвид Фленеган - "JavaScript: Подробное руководство"
Дуглас Крокфорд "JavaScript: сильные стороны"
Стефанов С. - "JavaScript. Шаблоны"
Джон Резиг - "Секреты JavaScript ниндзя"
Николас Закас - "JavaScript. Оптимизация производительности"
М. Кантелон , М. Хартер - "Node.js в действии"
Кирилл Сухов - "Node.js. Путеводитель по технологии"
Эдди Османи - "Разработка Backbone.js приложений"
Dr. Axel Rauschmayer - "Speaking JavaScript: An In-Depth Guide for Programmers" - Одна из лучших книг по JS. Пока только на английском. http://speakingjs.com/
Marijn Haverbeke - "Eloquent Javascript" - Вводная книга по JavaScript и программирование в целом. Перевод на хабре: http://habrahabr.ru/post/240219/ На английском :http://eloquentjavascript.net/
Онлайн сообщества:
http://learn.javascript.ru/ - оно одно, единственное. Начинать учить язык советую отсюда, потом переходить уже к книгам.
http://www.jstherightway.org/ - Огромный гайд составленный буржуями. Есть книги, статьи и всё-всё-всё.
Бложики и новостные ленты:
http://dailyjs.com/ - DailyJS
http://weblog.bocoup.com/ - Bocoup Weblog
http://perfectionkills.com/ - Perfection Kills
http://www.reddit.com/r/javascript - subreddit на reddit.com
http://toddmotto.com/ - Todd Motto, Lead front-end @appsbroker. Developer Expert @google.
Онлайн курсы:
Как же можно учить язык, только читая книжонки? Нужна практика, и только так изучаемое усваивается, не иначе.
CodeSchool - http://codeschool.com/ Отличный ресурс для изучения языка, очень много курсов по всем передовым технологиям.
CodeAcademy - http://www.codecademy.com/ Уже не такой сильный, но все еще интересный проект, так же маст хев для набивания скилла.
Udacity - https://www.udacity.com/course/ud015 Дает хорошее представляение о замыканиях.
Выучил основы, написал свою пузырьковую сортировку и змейку? Не знаешь как двигаться дальше?
Почитай теперь это - https://shamansir.github.io/JavaScript-Garden/
А потом? Я и так уже гений!!!
Выбери себе направление. Может, ты хочешь игори делать? Тогда вперед на гитхаб, и ищи phaser, pixi и другое, выбор не маленький. Хочешь на сервер сайд, на самой хипстерской технологии? Копай в сторону node, express, socket io. Хочешь писать MVC логику? Angular, backbone, да множество их. Нельзя забывать про NW.js, позволяющий создавать десктопные приложения.