[ /b/ /u/ /rf/ /dt/ /vg/ /r/ /cr/ /lor/ /mu/ /oe/ /s/ /w/ /hr/ ] [ /a/ /ma/ /sw/ /hau/ /azu/ ] [ /tv/ /cp/ /gf/ /bo/ /di/ /vn/ /ve/ /wh/ /fur/ /to/ /bg/ /wn/ /slow/ /mad/ ] [ /d/ /news/ ] [ Главная | Настройки | Закладки | Плеер ]

 [ Скрыть форму ]
Имя
Не поднимать тред 
Тема
Сообщение
Капча Капча
Пароль
Файл
Вернуться к
  • Публикация сообщения означает согласие с условиями предоставления сервиса
  • В сообщениях можно использовать разметку wakabamark
  • На данной доске отображаются исходные имена файлов!
  • Разрешенные типы файлов: pdf, archive, image, vector, flash, music, text, video, code
  • Тред перестает подниматься после 500 сообщений.
  • Треды с числом ответов более 100 не могут быть удалены.
  • Старые треды перемещаются в архив после 40 страницы.

No.46281 Ответ [Открыть тред]
Файл: main-qimg-2a7cef12cc63002b267d248611c76e58.png
Png, 782.27 KB, 572×861 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
main-qimg-2a7cef12cc63002b267d248611c76e58.png
И мы продолжаем ликвидацию безграмотности, неспешные беседы и яростные дискуссии вокруг яваскрипта.

Предыдущий тред: >>40541
148 posts are omitted, из них 24 с файлами. Развернуть тред.
>> No.49187 Ответ
Анон, объясни, как работает стэк, очередь и прочие внутренности в ЖС. А то максимум, что я понял, так это то, что асинхронные функции "выпадают" из главного (он же вроде единственный?) потока. Желательно попроще, хоть на примере мужика, срущего с дерева, как в треде о сопротивлении электричества.
>> No.49207 Ответ
>> No.49208 Ответ
>>49187
Хуле тут вообще сложного? Просто функции дергают другие функции как обычно. Когда это закончилось, внешний цикл смотрит нет ли еще каких событий которые нужно обработать и запускает обработку следующего. Ничего не упустил? Может сэкономлю кому 26 минут.
>> No.49224 Ответ
>>49207
>>49208
Вот спасибо, друзья. Наконец-то всё понял!
Но теперь есть следующий вопрос. Есть проект на Vue с Router и Vuex. Проект, естественно, не в одном файле, как новички делают, а в .vue- и .js-файлики (ибо сгенерирован командой vue create).
А теперь вопрос: можно ли взять что-то из Vuex.Store да использовать в .vue-файле (например, переменную из state в качестве счётчика)? Потому что единственное, что я нашёл, это передавать через props, и то - такая цепочка вырастет, что любой новый русский удавится.
капча "знающих скрипт" намекаэ
>> No.49240 Ответ
>>49224
> Проект, естественно, не в одном файле, как новички делают
Так вот почему любая современная перделка рассирается минимум по десяти тысячам файлам - ведь просто складвать код в один файлик - это не тру-супер-про-какир-вей.
>> No.49241 Ответ
1) Если я хочу что-то сохранить между сессиями я пихаю это в localStorage? Или в cache? Или в AppCache? Или в IndexedDB? Я думал есть только localStorage и печенье, а их вон как дохуя. И каждый из браузеров поддерживает какие-то из них, но не все вместе? И что из этого выбрать?
2) Везде где читал про жс говорили, что весь жс из всех скриптов выполняется в одной глобальной луже, и в итоге все попадает в глобальный объект window. Так что не так с service worker'ами? Почему у них какие-то ServiceWorkelGlobalScope? Почему self а не window?
>> No.49243 Ответ
>>49241
> Если я хочу что-то сохранить между сессиями я пихаю это в localStorage?
Да. Везде работает и все про него знают.

> и в итоге все попадает в глобальный объект window
Это если ты, ну... не очень умный и разводишь однофайловую помойку с процедурщиной, думая "а, всё равно недоязык", как, к сожалению, и делает подавляющее большинство особенно всякие доморощенные писатели параше-движков за уважуху в конфе. Если организовать код в виде классов (уточнение: конструкторов), в window попадут только сами классы, и то — если только ты не засунешь их в подобие неймспейса, соорудив последнее из объектов, изнутри какого-нибудь локального скопа.
var Foo = new Object();

(function() {
  Foo.Bar = function() {
    this.baz = 1448;
    this.qux = function() { return 1337 };
  };
})();

>>49241
> Если я хочу что-то сохранить между сессиями я пихаю это в localStorage?
Да. Везде работает и все про него знают.

> и в итоге все попадает в глобальный объект window
Это если ты, ну... не очень умный и разводишь однофайловую помойку с процедурщиной, думая "а, всё равно недоязык", как, к сожалению, и делает подавляющее большинство особенно всякие доморощенные писатели параше-движков за уважуху в конфе. Если организовать код в виде классов (уточнение: конструкторов), в window попадут только сами классы, и то — если только ты не засунешь их в подобие неймспейса, соорудив последнее из объектов, изнутри какого-нибудь локального скопа.
var Foo = new Object();

(function() {
  Foo.Bar = function() {
    this.baz = 1448;
    this.qux = function() { return 1337 };
  };
})();

// Elsewhere...
var instance = new Foo.Bar();
doSomething( instance.baz, instance.qux() );
Ещё глянь на browserify и webpack, в серьёзных проектах без них всё равно никуда.

> Почему self а не window?
self будет ссылкой на воркер. Колбэки для эвентов типа fetch, statechange и прочих (тебя же это смутило?) ты вешаешь именно на него, а не на объект окна, у которого таких эвентов просто нет. window — это не какая-то там самая супер-глобальная и универсальная зарезервированная переменная джаваскрипта, это просто объект, репрезентующий окно браузера.
И зачем тебе воркеры вообще, если не секрет?
Сообщение слишком длинное. Полная версия.
>> No.49244 Ответ
>>49240
Анон прав, так гораздо удобнее: поделил по смыслу и функционалу - и работа в разы легче идёт.
>> No.49253 Ответ
>>49243
Вот вроде сам задал вопрос, а теперь разобравшись, сам отвечаю..

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

> классы, iife
И они попадают в глобальный объект.

> window — это не какая-то там самая супер-глобальная
Именно ей window и является. А у воркеров это WorkerGlobalScope, получающийся через self.
https://developer.mozilla.org/en-US/docs/Glossary/Global_object

В этом и был весь мой вопрос: 'у воркеров отдельный глобальный объект от остальных скриптов?'. И ответ, очень простой, да.

>>49243
Вот вроде сам задал вопрос, а теперь разобравшись, сам отвечаю..

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

> классы, iife
И они попадают в глобальный объект.

> window — это не какая-то там самая супер-глобальная
Именно ей window и является. А у воркеров это WorkerGlobalScope, получающийся через self.
https://developer.mozilla.org/en-US/docs/Glossary/Global_object

В этом и был весь мой вопрос: 'у воркеров отдельный глобальный объект от остальных скриптов?'. И ответ, очень простой, да.

> И зачем тебе воркеры вообще, если не секрет?
Чтобы моя хуйня работала оффлайн: https://jan-white.github.io/my-works/005%20notebook/build/
Может кто умный оценить? Сделал и воркеры, и классы, и iife для динамического определения функций, и промисы, и async функции, в общем, использовал вроде все, что есть в джаваскрипте. Может покидайте, что дальше почитать, чтобы делать лучше. Пока я думаю реакт учить.
Больше всего я хочу узнать, как нормально делать интерактив. У меня это все сделано на data- атрибутах. И это работало нормально до тех пор, пока я не захотел, чтобы одна кнопка закрывала текущую модалку и потом делала кое-что. В итоге надо было повесить на кнопку два атрибута data-action, что невозможно. А даже когда я это обошел, не соблюдалась очередность - сначала срабатывал обработчик на кое-что, а потом закрывалась текущая модалка. Так что понятно, что нормальные люди делают это по-другому. Вопрос - как.
Сообщение слишком длинное. Полная версия.
>> No.49285 Ответ
>>49253
> исполняются в одном и том же глобальном объекте.
> исполняются
> в объекте
> файлы
Серьёзно? Ну ладно.

> Именно ей window и является.
Нет, не является. Ты путаешь джаваскрипт и дом апи.
$ node
> console.log(window);
ReferenceError: window is not defined
>

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

> Именно ей window и является.
Нет, не является. Ты путаешь джаваскрипт и дом апи.
$ node
> console.log(window);
ReferenceError: window is not defined
>

> моя хуйня
404
> думаю реакт учить
Разберись сначала с основами, чтобы не делать таких заявлений, как выше. Серьёзно тебе говорю. Даже если ты просто хочешь деняк поднять - уверенное знание языка будет серьёзным плюсом перед макаками.
Да, и насчёт реакта (и не только). Вот такой https://github.com/Jan-White/my-works/tree/master/004%20catEnergy/source подход организации исходников для реактов не годится. Технически возможен, но не нужен. Не разбивай по технологиям, это бессмысленно. Логичнее будет разбить на компоненты, как в бэм.
Сообщение слишком длинное. Полная версия.


No.43581 Ответ [Открыть тред]
Файл: -.jpg
Jpg, 125.61 KB, 700×500 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
-.jpg
Новый традиционный тред Доброчана, в котором мы будем постить каждый раз, когда заходим в /s/ дабы поделиться своими хоббипроектами, поговорить о смежных с программингом вопросах, поспорить на тему X vs Y, пообсуждать синтаксический сахар разных ЯП. Как обычно можно постить и в другие моменты, обсуждать разные темы. Всё во имя того, чтобы зашедший code monkey не чувствовал себя одиноким. Каждому зашедшему по чашечке скумы за мой счёт.

Предыдущий тред: >>40630
328 posts are omitted, из них 35 с файлами. Развернуть тред.
>> No.48374 Ответ
Файл: 1355315146509.png
Png, 0.50 KB, 10×10 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
1355315146509.png
>>48373
Взлольнул тут.
>> No.49192 Ответ
Файл: -.png
Png, 319.85 KB, 2518×1024 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
-.png
Если резюмировать, то будет как-то так. Что-то походящее на рф но в области /s/.
Хотел написать длинно, но решил, что бессмысленно.
В итоге: с детства (житое в 90е) благодаря отцу имея ZX Spectrum мечтал пилить игори.
Первую книгу по программированию и, собственно, возможность программировать обрел в 2003 году, когда учился в 10м классе. Был комп и по совету знакомого отцу программиста купили мне Лафоре (ООП в C++).
Пока учился в школе и ВУЗе (на программера) мечтал и стремился прогать игори - изучил DirectX (9й на тот момент) и в большей степени OpenGL (до уровня шейдеров) изучал движок Ogre, колупал простенький HGE, по возможности, но время требовалось на учебу и подработки.
После ВУЗа (армейки не было - пороки сердца). Устроился на работу - после чего наступила полоса беспамятства и тотального въебывания, базы данных, нескончаемые ETL, скрипты, окошечные набивалки для операторов. И всё. Ни желания, ни сил у меня не было ворошить свой мозг еще после работы, а время шло.
Сейчас я осознаю, что знания устарели - сейчас никто не будет писать игру с полностью своим движком - думаю закидают говном просто. Тем более DX весьма обновился, OpenGL пододвинулся для Vulkan - да и в этом нет уже смысла, когда везде это либо Unreal Engine либо Unity - даже для простых ДВУМЕРНЫХ ИГОР КАРЛ!
Если резюмировать, то будет как-то так. Что-то походящее на рф но в области /s/.
Хотел написать длинно, но решил, что бессмысленно.
В итоге: с детства (житое в 90е) благодаря отцу имея ZX Spectrum мечтал пилить игори.
Первую книгу по программированию и, собственно, возможность программировать обрел в 2003 году, когда учился в 10м классе. Был комп и по совету знакомого отцу программиста купили мне Лафоре (ООП в C++).
Пока учился в школе и ВУЗе (на программера) мечтал и стремился прогать игори - изучил DirectX (9й на тот момент) и в большей степени OpenGL (до уровня шейдеров) изучал движок Ogre, колупал простенький HGE, по возможности, но время требовалось на учебу и подработки.
После ВУЗа (армейки не было - пороки сердца). Устроился на работу - после чего наступила полоса беспамятства и тотального въебывания, базы данных, нескончаемые ETL, скрипты, окошечные набивалки для операторов. И всё. Ни желания, ни сил у меня не было ворошить свой мозг еще после работы, а время шло.
Сейчас я осознаю, что знания устарели - сейчас никто не будет писать игру с полностью своим движком - думаю закидают говном просто. Тем более DX весьма обновился, OpenGL пододвинулся для Vulkan - да и в этом нет уже смысла, когда везде это либо Unreal Engine либо Unity - даже для простых ДВУМЕРНЫХ ИГОР КАРЛ!
Госп-ди Б-же мой! Я вижу, что теперь я биомусор, т.к. я не знаю, за что мне взяться и есть ли в этом какой смысл. Требования у игроков очень высоки и мне за ними не поспеть. Алсо идея инди-игр (созданых малой группой разработчиков) теперь очернена ебаными корпорациями, когда какой-нибудь EA имеет игру на стиме с тэгом ИНДИ блядь.
Какого чертова черта? И что мне делать, если желание пилить игори есть даже в 30 лет, но знания устарели?
Сообщение слишком длинное. Полная версия.
>> No.49197 Ответ
>>49192
> Тем более DX весьма обновился, OpenGL пододвинулся для Vulkan - да и в этом нет уже смысла, когда везде это либо Unreal Engine либо Unity - даже для простых ДВУМЕРНЫХ ИГОР КАРЛ!
> Госп-ди Б-же мой! Я вижу, что теперь я биомусор, т.к. я не знаю, за что мне взяться и есть ли в этом какой смысл.

Не парься, забудь про C++, бери чистый C + SDL2, напиши рогалик или примитивный платформер под свою любимую ОС. Никаких анрилов и юнити-хуюнити для этого тебе не потребуется.
>> No.49203 Ответ
>>49192
Линейная алгебра и дифференциальная геометрия не устаревают. Ты можешь в математику? Или твои знания ограничиваются glBegin glEnd?
Знание движков не отменяет необходимости понимания. Наоборот, понимание позволяет быстро учить новые вещи.
Да, и заодно осиль Rust, потом спасибо скажешь.
>> No.49223 Ответ
>>49192
> желание пилить игори есть даже в 30 лет, но знания устарели?
Осспаде да какие к собакиным мамкам знания с юнькой и уечем яхз.

Стенания и плач на бордах и форумах.
И вот никто не желает признаваться себе что не код делаетб игру, а художник.
>> No.49233 Ответ
Где фрилансить блеать?
>> No.49234 Ответ
>>49233
Там.
>> No.49236 Ответ
Анон, а ты обычно читаешь оригинал или перевод? Да, тема касается именно айти, потому что худлит можно и на польском почитать, но мы не об этом. В последнее время почитываю только оргиналы, но с каждым разом есть страх, страх что-то понять не так или понять что-то не до конца. Особенно учитывая то, что я постоянно пользуюсь словарём(в моём случае — клик по незнакомому слову), буквально на каждой странице.
>> No.49237 Ответ
>>49236
Переводы отстают от оригинала, могут обосраться с собственно переводом и вычиткой-проверкой, можеть не быть ебук версии, а только говноскан. Плюсов и нет, тащемта.

Литературностей и сложностей в плане языка в такой литературе мало, разве что автор попадется, любящий попиздякать.
Так что продолжай, со временем привыкнешь.
>> No.49238 Ответ
>>49237
Спасибо, анон, буду продолжать. :3


No.48143 Ответ [Открыть тред]
Файл: 14737788001931.png
Png, 31.18 KB, 400×296 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
14737788001931.png
Почему до сих пор нет треда, посвящённому божественному языку Go или Golang?

Поделюсь своими ссылочками
http://golang-book.ru/
Очень хорошая книга, отлично подходит для начинающих, приводится подробное разъяснение основ
https://www.dropbox.com/s/pe7v02epirzzpat/intro_in_golang.7z?dl=1
То же, но в pdf формате

https://www.youtube.com/playlist?list=PLBOo6DBmP5V9CAXxxl6EZxZpMmT_4ZOca
Канал на ютубе. К сожалению порекомендовать его не могу, потому что много воды, то что можно я бы даже сказал нужно уместить в одно видео, растягивается на несколько

https://golangshow.com/
Подкаст по Golang

Реквестирую больше литературы, желательно на русском
Почему до сих пор нет треда, посвящённому божественному языку Go или Golang?

Поделюсь своими ссылочками
http://golang-book.ru/
Очень хорошая книга, отлично подходит для начинающих, приводится подробное разъяснение основ
https://www.dropbox.com/s/pe7v02epirzzpat/intro_in_golang.7z?dl=1
То же, но в pdf формате

https://www.youtube.com/playlist?list=PLBOo6DBmP5V9CAXxxl6EZxZpMmT_4ZOca
Канал на ютубе. К сожалению порекомендовать его не могу, потому что много воды, то что можно я бы даже сказал нужно уместить в одно видео, растягивается на несколько

https://golangshow.com/
Подкаст по Golang

Реквестирую больше литературы, желательно на русском
Если кто-то решится писать свои уроки- то совсем хорошо

postScriptum сам я изучаю golang с нуля, то есть вообще ни с какими языками программирования до этого дела не имел
Сообщение слишком длинное. Полная версия. 10 posts are omitted, из них 2 с файлами. Развернуть тред.
>> No.49032 Ответ
О, привет второй голанг тред, где-то там далеко плавает твой предшественник.

Го - основной язык. дженерики не нужны но я скорее сисадмин которому нужен недо-с потому что я ленивая балда.
>> No.49053 Ответ
>>49032
> но я скорее сисадмин которому нужен недо-с потому что я ленивая балда
А чем твою ленивую балду не устрил тот же питон, например. Я без агитации спрашиваю, просто интересно.
>> No.49068 Ответ
>>49053
Без агитации, отвечу. :3

1) Я очень не люблю пробелы как разделитель кода.
2) Структуры мне легче идут в го.
3) Го - более ограниченый язык, и мне легче его запомнить.
4) Статично скомпиленый код - ня. На серверах каждый раз устанавливать pip install huyeta-v.01 лень.
5) gofmt - ня.
>> No.49070 Ответ
>>49068
Кстати, дополню, я работаю на питоне, ибо овердохрена утилитов (и почти все интерфейсы и апи к нейросетям/нейросетесервисам) на питоне.

Он у меня не вызывает лютой НЕНАВИСТИ, но и любви тоже мало.
>> No.49072 Ответ
>>49068
Спасибо за ответ.
Поддерживаю тебя по всем пунктам.

Го, конечно, довольно убог (не как что-то хорошее или плохое, просто констатация факта), но если уж мне нужен будет богатый возможностями язык, то я возьму лисп или хаскелл (а никак не питон). А если всё это богатство не нужно, то я в любой день предпочту голанг питону.
>> No.49081 Ответ
Между тем, в черновом варианте, завезли как раз поддержку "более нормального" выкидывания ошибок, и дженериков.
>> No.49128 Ответ
Книги на русском:
Язык программирования Go - 2016 (Брайан У. Керниган)
Марк Саммерфильд - Программирование на языке Go - 2013

Книги на английском:
Cox-Buday K. - Concurrency in Go - 2017
Writing An Interpreter In Go
Network Programming with Go
go-programming-blueprints-2nd
go-in-practice
go-in-action

Каналы в телеге:
https://t.me/golangdigest
https://t.me/gophernews
Книги на русском:
Язык программирования Go - 2016 (Брайан У. Керниган)
Марк Саммерфильд - Программирование на языке Go - 2013

Книги на английском:
Cox-Buday K. - Concurrency in Go - 2017
Writing An Interpreter In Go
Network Programming with Go
go-programming-blueprints-2nd
go-in-practice
go-in-action

Каналы в телеге:
https://t.me/golangdigest
https://t.me/gophernews
https://t.me/golanglibrary

Полезное:
dou.ua/lenta/tags/Go%20дайджест
dou.ua/lenta/articles/senior-go
https://www.jetbrains.com/research/devecosystem-2018/go/
+ ищите слак каналы, русско- и украино- язычный относительно активные, там постятся статьи и новости.

Где писать:
VS Code, GoLand, Vim, Sublime, Atom.

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

Что-то отсюда даже можно добавить в шапку, а лучше сделать её в гите, а в треде кидать ссылку.

>>48997
Какая предметная область, какие фреймворки/либы/бд юзаете, как тестирование делаете? Как архитектуру приложений определяете - юзаете ли паттерны, как всё по сравнению с энтерпрайс-разработкой на джаве/шарпах? Почему на проекте юзаете го?

>>48145
Да, 4-тый курс универа, го - основной язык, особо сложного ничего на нем не писал. Рассылаю резюме на галеры, джуновакансий почти нихуя, хр-юши игнорят в основном, следовательно, из вкатывальщиков-джунов на го у контор выбор есть.
Сообщение слишком длинное. Полная версия.
>> No.49226 Ответ
Начал изучать этот ваш Го, в дополнение к няшному Питону
Пока всё выглядит более-менее знакомо, тем более когда-то был опыт писательства на C. Что почитать для более глубокого погружения и знакомства с годными практиками разработки? Какие хорошие библиотеки для веба есть? Слышал что-то про gin, напоминает фласк по своей философии. Но когда-то читал, что считается кошерным писать собственный костыль^W фреймворк под свои задачи.
>> No.49227 Ответ
>>49226
gin - это лучший роутер, просто бери его и не парься. Книжек не посоветую, но в официальной документации есть раздел Effective Go, который почти никто не читает, а он довольно винрарный.
>> No.49228 Ответ
>>49227
Ок, спасибо.
> Effective Go
Выглядит интересно, наверну.
Не зря ждал, а то на дваче конечно активность выше, по преимущественно из срача состоит


No.48615 Ответ [Открыть тред]
Файл: 1.jpg
Jpg, 49.89 KB, 1024×600 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
1.jpg
Предлагаю челендж, где каждую неделю мы будем выполнять задания.

Придумал разные уровни сложности:
1 - как самый простой.
5 - самый сложный.

Первые задания от меня, на правах ОПа!

C3: Реализация синтезатора bytebeat, воспроизводящего аудио непосредственно с помощью OpenAL или аудио вашей платформы (e.g alsa, oss, sndio)

C2: Реализуйте последовательность Фибоначчи с помощью рекурсивного решения, но избегайте экспоненциальной временной сложности. Программа должна быть четко определена для первых 100 членов Фибоначчи. Это типичный вопрос на интервью. Haskell, Idris и Agda не могут быть использованы для этого задания, бонусные очки для выяснения, почему.

C1: Реализация программы fizzbuzz без использования оператора деления по модулю ( % , mod, rem, & c...)

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

Придумал разные уровни сложности:
1 - как самый простой.
5 - самый сложный.

Первые задания от меня, на правах ОПа!

C3: Реализация синтезатора bytebeat, воспроизводящего аудио непосредственно с помощью OpenAL или аудио вашей платформы (e.g alsa, oss, sndio)

C2: Реализуйте последовательность Фибоначчи с помощью рекурсивного решения, но избегайте экспоненциальной временной сложности. Программа должна быть четко определена для первых 100 членов Фибоначчи. Это типичный вопрос на интервью. Haskell, Idris и Agda не могут быть использованы для этого задания, бонусные очки для выяснения, почему.

C1: Реализация программы fizzbuzz без использования оператора деления по модулю ( % , mod, rem, & c...)

Реализацию можно кидать тут под спойлером либо pastebin.

Связь дабы не проебать треад и для организации тут: @lambdaclass
Сообщение слишком длинное. Полная версия.
>> No.49129 Ответ
Так себе идея.
>> No.49134 Ответ
>>48615
Где-то я видел уже задачу C2. Не понимаю, почему haskell не может быть использован для решения. Вот несколько решений на хаскеле. Третье не рекурсивное, но самое лаконичное и ясное. Первые два - рекурсивные, хотя рекурсивна внутренняя функция. А рекурсивной должна быть внешняя? Тогда наверное и вправду не получится избежать экспоненциальной временной сложности. Но почему именно на тех трех языках? На джаве наверное тоже не получится избежать. Или здесь я должен разбираться в тонкостях того, как исполняется хаскель, чтобы ответить?

Первые два решения дают список в "перевернутом" виде. Если нужно возвращать список в нормальном виде, тогда причина в том, как устроены списки в хаскеле.

module Fib () where

fib :: Int -> [Int]
fib 1 = [1]
fib 2 = [1,1]
fib n = innerfib [1,1] (n-2)

innerfib :: [Int] -> Int -> [Int]
innerfib arr 0 = arr
innerfib (a : b : rest) n = innerfib (a + b : a : b : rest) (n-1)
>>48615
Где-то я видел уже задачу C2. Не понимаю, почему haskell не может быть использован для решения. Вот несколько решений на хаскеле. Третье не рекурсивное, но самое лаконичное и ясное. Первые два - рекурсивные, хотя рекурсивна внутренняя функция. А рекурсивной должна быть внешняя? Тогда наверное и вправду не получится избежать экспоненциальной временной сложности. Но почему именно на тех трех языках? На джаве наверное тоже не получится избежать. Или здесь я должен разбираться в тонкостях того, как исполняется хаскель, чтобы ответить?

Первые два решения дают список в "перевернутом" виде. Если нужно возвращать список в нормальном виде, тогда причина в том, как устроены списки в хаскеле.

module Fib () where

fib :: Int -> [Int]
fib 1 = [1]
fib 2 = [1,1]
fib n = innerfib [1,1] (n-2)

innerfib :: [Int] -> Int -> [Int]
innerfib arr 0 = arr
innerfib (a : b : rest) n = innerfib (a + b : a : b : rest) (n-1)

fib2 :: Int -> [Int]
fib2 1 = [1]
fib2 2 = [1,1]
fib2 n = innerfib2 (1, 1) (n-2) [1,1]

innerfib2 :: (Int,Int) -> Int -> [Int] -> [Int]
innerfib2 p 0 arr = arr
innerfib2 p n arr = case nextpair p of (a,b) -> innerfib2 (a,b) (n-1) (b:arr)

nextpair :: (Int,Int) -> (Int,Int)
nextpair (a,b) = (b, a+b)

fib3 :: Int -> [Int]
-- fib3 n = take n (map snd (iterate nextpair (1,1)))
fib3 n = (map snd . take n) (iterate nextpair (1,1))
Сообщение слишком длинное. Полная версия.
>> No.49179 Ответ
fizzbuzz
public class FizzBuzz {
public static void main(String[] args) {
for (int i = 1, m = 4, n = 2; i <= 100; i++, m--, n--) {
if (m == 0 || n == 0) {
if (n == 0) {
System.out.print("Fizz");
n = 3;
}
if (m == 0) {
System.out.print("Buzz");
m = 5;
}
System.out.println();
} else {
fizzbuzz
public class FizzBuzz {
public static void main(String[] args) {
for (int i = 1, m = 4, n = 2; i <= 100; i++, m--, n--) {
if (m == 0 || n == 0) {
if (n == 0) {
System.out.print("Fizz");
n = 3;
}
if (m == 0) {
System.out.print("Buzz");
m = 5;
}
System.out.println();
} else {
System.out.println(i);
}
}
}
}
Сообщение слишком длинное. Полная версия.
>> No.49182 Ответ
>>49179
Как не нужно делать последовательность Фибоначчи
import java.math.BigInteger;

public class Fibonacci {

private static int count = 100;

private static void step(BigInteger num1, BigInteger num2) {
count--;
if (count <= 0) {
return;
}
System.out.print(num2 + " ");
step(num2, num1.add(num2));
>>49179
Как не нужно делать последовательность Фибоначчи
import java.math.BigInteger;

public class Fibonacci {

private static int count = 100;

private static void step(BigInteger num1, BigInteger num2) {
count--;
if (count <= 0) {
return;
}
System.out.print(num2 + " ");
step(num2, num1.add(num2));
}

public static void main(String[] args) {
step(BigInteger.ZERO, BigInteger.ONE);
}
}
Сообщение слишком длинное. Полная версия.
>> No.49219 Ответ
>>49182
А так?
a = 0
b = 1
c = 0
while c < 1000:
c = a + b
a = b
b = c
print(a)


No.30133 Ответ [Открыть тред]
Файл: Java8-Logo.jpg
Jpg, 49.61 KB, 321×340 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
Java8-Logo.jpg
Начнем же тред околожабных технологий. Приветствуются дельные маны, пояснялки современных течений и анализ ситуации на будущее.
389 posts are omitted, из них 56 с файлами. Развернуть тред.
>> No.48580 Ответ
У меня есть веб приложение, собранное мавеном.
Из эклипса нормально запускается и деплоится на томкат. Сделал war этого приложения и попробовал вручную запустить на томкате, закинув варник в папку webapp. Судя по логу - https://ideone.com/0XVkO8 - вроде всё норм, но не работает.

Почему, подскажите?
>> No.48583 Ответ
>>48580
Я - идиот. Полный.
Собирал этот war не мавеном (mvn package) а простой командой (jar -cvf projectname.war *). Решение проблемы заняло у меня дней пять, в течении которых у меня натурально порой слёзы наворачивались от собственного бессилия и тупости (ну, хоть томкат нормально освоил).
Фигово быть мной.
>> No.48584 Ответ
>>48583
Поздравляю, ты испытал эмоциональные качели программиста. Дальше будет легче.
>> No.49181 Ответ
Изучение javafx же бесполезное занятие? Просто время в пустую потрачу, а никаких полезных навыков не будет?
>> No.49184 Ответ
>>49181
Сможешь писать GUI приложения на джаве на относительно простом, понятном и удобном API. Подумай, нужны ли миру джава-приложения с GUI?
>> No.49185 Ответ
>>49184
нет конечно
>> No.49198 Ответ
>>49181
полностью бесполезное. Технология мертва, хотя и довольно удобна для несложных гуёв. Не повторяй мою ошибку :3
>> No.49199 Ответ
>>49198
Я думал, приложения на андроиде используют javafx.
>> No.49200 Ответ
>>49198
А swing?
>>49199
Теоретически можно писать через gluon, но он платный.
В андроиде свой собственный ничем не совместимый api.
>> No.49201 Ответ
>>49200
> А swing?
Попроще в плане функций. Но сложнее добиться того, чего ты хотел. Если уж ты хочешь делать GUI на джаве, то таки JavaFX лучше.


No.49189 Ответ [Открыть тред]
Файл: xlarge_exaba.png
Png, 12.67 KB, 360×200 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
xlarge_exaba.png
Помогите найти движок exaba, его отовсюду выпилили. Хотел написать себе борду и такой вот облом. Раньше находился по адресу http://github.com/imageboards/exaba
>> No.49190 Ответ


No.33881 Ответ [Открыть тред]
Файл: vim-shortcuts-dar...
Png, 116.56 KB, 2560×1600
edit Find source with google Find source with iqdb
vim-shortcuts-dark_2560x1600.png
Файл: vim_cheat_sheet_f...
Png, 1791.61 KB, 3301×2550
edit Find source with google Find source with iqdb
vim_cheat_sheet_for_programmers_print.png

Обещал про Vim написать. Ну вот собсна и написал.

Итак. Для начала поговорим о том, кому он не нужен. Ненужен он в самую первую очередь тем, кто не умеет в слепую десятипальцевую печать. Для таких людей vim буде каторгой. Посему данной категории людей советую либо забить на это дело, либо начать развивать слепую печать. Благо навык полезный. Можно гуглить например очевидную stamina и т.д. Вторая категория людей, которым не нужен сабж, это фанаты emacs по очевидным причинам. Кроме того не очень желательно изучать для виндопользователей. Ибо может быть черевато переходом на linux в конечном итоге, лол.

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

Ок. Где взять? Для линупсов достаточно установить из пакетного менеджера очевидный пакет под именем vim sudo apt-install vim для бубунты, а остальные и сами разберутся. Для винды можно пользовать ссылочку ftp://ftp.vim.org/pub/vim/pc/gvim74.exe

Скачали, запустили. Ну и? Где вся няшнота то?
Объясняю только самые основы:
  • выход без сохранения точнее закрытие файла при помощи :q!
  • есть несколько режимов работы. Основные: "нормальный", редактирование, командный, выделение.
  • передвижение по файлу при помощи клавиш h j k l это соответственно влево, вниз, вверх, вправо.
  • для собсна редактирования можно нажать например i
Далее находим vimtutor и проходим его. Он ответит на остальные вопросы. Для линупсов vimtutor ru в консольке. Для винды должно быть гхдетоу в районе меню пуск. Хотя шут его знает. Потом изучаем и печатаем на бумажку или ставим в качестве обойки воон те картинки, что в комплекте с постом идут.
Обещал про Vim написать. Ну вот собсна и написал.

Итак. Для начала поговорим о том, кому он не нужен. Ненужен он в самую первую очередь тем, кто не умеет в слепую десятипальцевую печать. Для таких людей vim буде каторгой. Посему данной категории людей советую либо забить на это дело, либо начать развивать слепую печать. Благо навык полезный. Можно гуглить например очевидную stamina и т.д. Вторая категория людей, которым не нужен сабж, это фанаты emacs по очевидным причинам. Кроме того не очень желательно изучать для виндопользователей. Ибо может быть черевато переходом на linux в конечном итоге, лол.

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

Ок. Где взять? Для линупсов достаточно установить из пакетного менеджера очевидный пакет под именем vim sudo apt-install vim для бубунты, а остальные и сами разберутся. Для винды можно пользовать ссылочку ftp://ftp.vim.org/pub/vim/pc/gvim74.exe

Скачали, запустили. Ну и? Где вся няшнота то?
Объясняю только самые основы:
  • выход без сохранения точнее закрытие файла при помощи :q!
  • есть несколько режимов работы. Основные: "нормальный", редактирование, командный, выделение.
  • передвижение по файлу при помощи клавиш h j k l это соответственно влево, вниз, вверх, вправо.
  • для собсна редактирования можно нажать например i
Далее находим vimtutor и проходим его. Он ответит на остальные вопросы. Для линупсов vimtutor ru в консольке. Для винды должно быть гхдетоу в районе меню пуск. Хотя шут его знает. Потом изучаем и печатаем на бумажку или ставим в качестве обойки воон те картинки, что в комплекте с постом идут.

Это было сверхкраткое введение. А теперь мы будем обмазыватся плугинками и всячески допиливать редактор до удобоваримого состояния. Для начала открываем .vimrc или _vimrc (для венды). Это конфигурационный файлег. Да, да, господа виндузятники. Ни каких окошечек с настроечками. Только хардкор.
По поводу настроечек рекомендую загуглить самомуа лучше почитать маны. Примеры: http://dimio.org/cgi-bin/bps/hlghtsrc/sourcehl.cgi?d=conf&s=vimrc&l=vim http://pastebin.com/jy4a3pE5 http://pastebin.com/paPWQ5fE http://pastebin.com/V3GdD38s Тысячи их.

Однако мы переходим к самому интересному. Доведём до ума сабж при помощи плугинок. Ибо без них vim уныл. Для начала нужно установить пакетный менеджер. Рекомендую либо Vundle либо NeoBundle. Думаю сами сможете загуглить их. К ним идут инструкции. Тож сами читнёте.

Самые полезниньки плагины можно найти там http://vim.wikia.com/wiki/Use_Vim_like_an_IDE

Отдельно упомяну следующие:
NERDTree добавляет древо файлов.
bufexplorer даёт удобную навигацию по буферам.
Вот кстати о буферах, окнах и табах в виме. Вот открыли вы один файлег, а потом, не закрывая первый, открыли второй. Можно потом переключаться между этими файлами. А можно их в одном окне одновременно открыть. Подробнее об том читнуть в справке или например в http://habrahabr.ru/post/28572/ http://habrahabr.ru/post/102373/
Vim Powerline раскрашивает статусную строку.
ColorSamplerPack набор тем оформления.

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

Можно ещё читнуть напоследок http://habrahabr.ru/post/176187/

Ну пока всё. Спрашивайте свои ответы. Ато может я чего забыл ненароком.
Сообщение слишком длинное. Полная версия. 223 posts are omitted, из них 42 с файлами. Развернуть тред.
>> No.49055 Ответ
>>49054
> Нашел для практики
Найди лучше такой сайт/прогу, где есть специальные упражнения, заточенные именно на постепенное освоение выбранной тобой раскладки. Там они выстроены от простого к сложному. В том же gtypist'е есть.
> Без гайдов
Гайд простой: каждому пальцу назначается свой набор клавиш, которые только он может нажимать. Плюс в состояни ожидания пальцы возвращаются на свои клавиши в центральном ряду. А дальше упражнения и тренировки, соблюдая это правило. В википедии есть:
https://en.wikipedia.org/wiki/Touch_typing
>> No.49056 Ответ
>>49055
> Найди лучше такой сайт/прогу, где есть специальные упражнения, заточенные именно на постепенное освоение выбранной тобой раскладки. Там они выстроены от простого к сложному
Так так там и есть.
>> No.49058 Ответ
>>49056
Не нашёл, но я не очень пристально искал. Должны быть упражнения типа того, что сначала печатаем только слова/псевдослова, состоящие из букв центрального ряда. Потом постепенно добавляем другие буквы.

Если есть, то ок.
>> No.49060 Ответ
>>33881
Анон, как эти вашим ВИМом овладеть? Туториал пройден, плагины поставлены, настроен под себя. Десятипальцевой слепой печатью владею, но печатаю всё равно медленнее чем в IDE или любом другом редакторе, особенно когда нужно заниматься рефакторингом, да и вообще по коду перемещаться.
>> No.49061 Ответ
>>49060
Ищи решения для всяких утомительных для тебя операций, сведи использование hjkl до минимума.
>> No.49062 Ответ
>>49060
Почитай вот это:
http://www.moolenaar.net/habits.html
Это оригинал. Вроде бы русский перевод тоже где-то есть.
>> No.49082 Ответ
>>48854
> Я, когда вимом пользовался, вообще выработал у себя привычку любой законченный кусок ввода на автомате завершать нажатием на Esc (конечно, Esc надо перебиндить поближе для этого).
Я хоть и пока не очень много пользовался вимом, но уже выработал привычку долбить постоянно долбить по эскейпу. Хорошо, что он обычно ничего не делает, но вот если перебиндить его на капслок... печатать не в виме станет невозможно.
>> No.49106 Ответ
>>49060
Я поставил vim-плагин для intellij idea и совмещаю vim с ide.

Ну и еще добавил разные плагины в сам vim, что он тоже стал похож на ide, так что разные небольшие проекты можно править прямо в vim-е. Когда бывает нужно автодополнение, переключаюсь на intellij idea.

Лично мне удобны в vim-е:
- перемещение по тексту
- поиск
- повторение последней операции через нажатие на "."
- сложные замены с регулярными выражениями

Мне стало легче с vim-ом после того, как я узнал, что можно выделять несколько строк, нажав "Shift-V".
Кастомизацию vim-а через добавление плагинов облегчает Vundle.vim.

Я создал git-репозиторий, в котором храню свой .vimrc-файл.
>> No.49116 Ответ
> Вики на wikia.com
смеюсь
>> No.49186 Ответ
Файл: 1521405363079.jpg
Jpg, 98.85 KB, 710×540 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
1521405363079.jpg
>>40393
Впридачу к этому есть ещё zathura — для чтения pdf/djvu.


No.49151 Ответ [Открыть тред]
Файл: 85a4873f699bc485411f0f34ec4ebbfc1510506588_large.jpg
Jpg, 13.55 KB, 200×200 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
85a4873f699bc485411f0f34ec4ebbfc1510506588_large.jpg
периодически нужны простые html шаблоны, без фреймворков на чистом html/css. по большей части правка уже готовых шаблонов. плачу битками только. понятное дело на большие суммы не расчитывай. 2-5$ в среднем.
зато постоянно, иногда могут быть крупные заказы на более крутые шаблоны. что нужно от тебя так это идеальное знание <div'ной верстки, по большему счету все. шаблоны нужны простые шапка контент футер. фейкопочта для связи. vhs@cumallover.me
пиши
>> No.49152 Ответ
> знание <div'ной верстки
Делаю табличную¹ за наличные. Быстро, профессионально! Работает во всех браузерах! Не требует JavaScript²!

¹ — CSS за отдельную плату.
² — скрипты за отдельную плату.


No.27510 Ответ [Открыть тред]
Файл: 200px-NET_h_rgb_2...
Png, 17.12 KB, 200×49
edit Find source with google Find source with iqdb
200px-NET_h_rgb_2.png
Файл: 371px-C_sharp.svg...
Png, 6.26 KB, 371×254
edit Find source with google Find source with iqdb
371px-C_sharp.svg.png

Здесь будет ветка обсуждения .net и C#.
И сразу вопрос: какой встроенный класс в C# реализует массив с обращением по индексу за О(1), в котором при этом можно было бы добовлять в конец элементы(аналог vector из С++), и какой соответственно реализует связный список с вставкой элемента в середину и начало и удалением элемента за О(1)(аналог list в С++).
467 posts are omitted, из них 70 с файлами. Развернуть тред.
>> No.48745 Ответ
Файл: 785px-Inheritance.svg.png
Png, 10.33 KB, 785×487 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
785px-Inheritance.svg.png
Имеется абстрактный класс и 4 производных от него.
Всё вместе представляет собой 60 строчек кода.
По-моему, вся эта кучка классов удобнее для восприятия в виде одного файла.
Стоит ли выносить каждый производный класс в отдельный файл?
Даже не представляю, как гуглить подобные стандарты.
>> No.48746 Ответ
>>48745
Стоит.
Классы имеют привычку разрастаться.
>> No.48748 Ответ
>>48746
Спасибо.
Учту.
>> No.48816 Ответ
Що про эф сярп сказать можете, комрады?
>> No.48820 Ответ
Файл: shirai-kuroko.jpg
Jpg, 204.48 KB, 1050×1400 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
shirai-kuroko.jpg
>>48816
Вакансий море, в отрасли — жуткий кадровый голод, выбирайте эф сярп, комрады.
>> No.49071 Ответ
Файл: konachan-com-63238-sample.jpg
Jpg, 157.81 KB, 1800×1013 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
konachan-com-63238-sample.jpg
Расскажите про .net core.
Я правильно понимаю, что можно сделать что-то под шиндовс на шарпе, а потом отпилить гуи, сконпелять под эту кору и запускать на линупс сервере?
Насколько трудоемка установка этих зависимостей и смогу ли я юзать все доступные стандартные либы или кастомные?
>> No.49073 Ответ
>>49071
> Я правильно понимаю, что можно сделать что-то под шиндовс на шарпе, а потом отпилить гуи, сконпелять под эту кору и запускать на линупс сервере?
Так ведь это можно было и до .NET Core делать, через Mono. Кстати, если использовать Mono и если гуи написано на Windows Forms, его можно не отпиливать, в Mono нет поддержки WPF, но Windows Forms поддерживается. А в .NET Core нет ни того, ни другого, но можно использовать например Avalonia, Electron.NET, ASP.NET Core или какие-нибудь привязки к Qt например
>> No.49103 Ответ
Файл: 91180856.jpg
Jpg, 11.42 KB, 165×232
edit Find source with google Find source with iqdb
91180856.jpg
Файл: 1386054315513.gif
Gif, 403.03 KB, 408×462
edit Find source with google Find source with iqdb
1386054315513.gif

Нет у кого этой книги в скане? https://www.piter.com/product/otladka-prilozheniy-dlya-microsoft-net-master-klass
У меня была бумажная много лет назад, а потом вроде цветная дежавюха, но теперь не найти.
В гуглях встречается только какая-то предыдущая версия, это не то.
>> No.49108 Ответ
>> No.49109 Ответ
>>49108
Это старая, упомянутая в посте.


No.46835 Ответ [Открыть тред]
Файл: Cw02i0IUsAAdYJK.jpg
Jpg, 107.89 KB, 915×803 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
Cw02i0IUsAAdYJK.jpg
Хочу сделать такую тему:

1. Скачать весь твиттер или большую его часть.
2. Загнать всё это дело в Elasticsearch.
3. Прогнать это всё дело через классификаторы, анализаторы кейвордов, сентимента и т. д.
4. Предоставлять API для выборок любой сложности.

Зачем?

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

Кому?

Маркетологам, аналитикам, исследователям.

Хочу сделать такую тему:

1. Скачать весь твиттер или большую его часть.
2. Загнать всё это дело в Elasticsearch.
3. Прогнать это всё дело через классификаторы, анализаторы кейвордов, сентимента и т. д.
4. Предоставлять API для выборок любой сложности.

Зачем?

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

Кому?

Маркетологам, аналитикам, исследователям.

----

Так вот, как думаешь, имеет шансы взлететь? Есть ли аналогичные решения?
Сообщение слишком длинное. Полная версия.
>> No.46837 Ответ
>>46835
Обычный стриминг апи очень лимитирован. Есть вариант присосаться к сырому потоку, но он стоит очень дохуя, и чтобы его обработать в рилтайме надо тоже очень дохуя дури в железе. В общем, это для топовых корпораций вариант, а не для ололо-стартапа.
О скачивании всего твиттора речи вообще не идет, там какие-то сотни миллионов в день и никто тебе не даст в них копаться.
>> No.46841 Ответ
>>46837
Ну, в общем, посидели с пацанами и пришли к тому же мнению. А ещё это вроде как нарушает TOS, так что ну его в пень, даже если бы были (ну, чисто гипотетически) ресурсы.
>> No.49107 Ответ
>>46837
Можно just for fun использовать spark, он работает распределенно. Есть spark-streaming.
>> No.49131 Ответ
Оооо^H^H^H^H


[0] [1] [2] [3] [4] [5] ... [51] [52] [53]
Пароль:

[ /b/ /u/ /rf/ /dt/ /vg/ /r/ /cr/ /lor/ /mu/ /oe/ /s/ /w/ /hr/ ] [ /a/ /ma/ /sw/ /hau/ /azu/ ] [ /tv/ /cp/ /gf/ /bo/ /di/ /vn/ /ve/ /wh/ /fur/ /to/ /bg/ /wn/ /slow/ /mad/ ] [ /d/ /news/ ] [ Главная | Настройки | Закладки | Плеер ]