Чтение исходного кода известных фреймворков может хорошо помочь программисту в улучшении его профессиональных навыков. Автор статьи, перевод которой мы сегодня публикуем, недавно анализировал код vue2.x. Он нашёл в этом коде некоторые интересные JavaScript-идеи, которыми решил поделиться со всеми желающими.
Рубрика «Программирование» - 127
5 интересных JavaScript-находок, сделанных в исходном коде Vue
2020-05-25 в 14:17, admin, рубрики: javascript, vue, vuejs, Блог компании RUVDS.com, Программирование, разработка, Разработка веб-сайтов, фреймворк«Программирование лучше секса»
2020-05-24 в 16:23, admin, рубрики: мотивация, мотивация программистов, Программирование, разработка, социальная инженерия, управление командой, управление людьми, управление персоналом, управление разработкой, Управление сообществом
Эту фразу на заре своей трудовой деятельности я услышал от начальника отдела АСУ одного из Советских заводов, когда он предлагал идти работать к нему в отдел.
Естественно, тогда я не считал, да и сейчас не считаю, что программирование может быть заменой хорошему сексу. Но только спустя годы смог в полной мере оценить глубину эмоций, которую он вкладывал в свою крылатую фразу. В том числе и потому, что сам иногда испытываю трепетные чувства при создании совершенной архитектуры или красивого программного кода. И хотя понятия о красоте у каждого человека может быть свое, но тяга к совершенству бывает у всех одинаковая.
Однако, эмоции это одно, а человек инженер разумный, это другое. И меня давно занимал вопрос, а в чем же реальная причина по которой хочется делать код красивым?
Кому интересно размышления о логическом обоснование поиска прекрасного в разработке программного обеспечения и в других технических дисциплинах, прошу под кат.
Читать полностью »
Атрибут cleanup
2020-05-24 в 13:57, admin, рубрики: C, clang, cleanup, gcc, Анализ и проектирование систем, Компиляторы, Программирование, системное программированиеЦитата из документации GCC [1]:
Атрибут cleanup предназначен для запуска функции, когда переменная выходит из области видимости. Этот атрибут может быть применён только к auto-переменным, и не может быть использован с параметрами или с static-переменными. Функция должна принимать один параметр, указатель на тип, совместимый с переменной. Возвращаемое значение функции, если оно есть, игнорируется.
Если включена опция -fexceptions, то функция cleanup_function запускается при раскрутке стека, во время обработки исключения. Отметим, что атрибут cleanup не перехватывает исключения, он только выполняет действие. Если функция cleanup_function не выполняяет возврат нормальным образом, поведение не определено.
Атрибут cleanup поддерживается компиляторами gcc и clang.
В этой статье я приведу описание различных вариантов практического использования атрибута cleanup и рассмотрю внутреннее устройство библиотеки, которая использует cleanup для реализации аналогов std::unique_ptr и std::shared_ptr на языке C.
Читать полностью »
Все, что вы должны знать о std::any
2020-05-24 в 11:09, admin, рубрики: Any, c++, c++17, stl, STL containers, перевод, Программирование, системное программированиеПривет! Представляем вашему вниманию перевод статьи «Everything You Need to Know About std::any from C++17» автора Bartlomiej Filipek.
С помощью std::optional
вы можете хранить один какой-то тип. С помощью std::variant
вы можете хранить несколько типов в одном объекте. И С++17 предоставляет нам еще один такой оберточный тип — std::any
, который может хранить что угодно, оставаясь при этом типобезопасным.
Читать полностью »
Как вызвать утечку памяти в Angular-приложении?
2020-05-23 в 15:18, admin, рубрики: angular, javascript, Блог компании RUVDS.com, Программирование, разработка, Разработка веб-сайтовПроизводительность — это ключ к успеху веб-приложения. Поэтому разработчикам нужно знать о том, как возникают утечки памяти, и о том, как с ними бороться.
Эти знания особенно важны в том случае, когда приложение, которым занимается разработчик, достигает определённого размера. Если уделять утечкам памяти недостаточно внимания, то всё может закончиться тем, что разработчик, в итоге, попадёт в «команду по устранению утечек памяти» (мне доводилось входить в состав такой команды).
Утечки памяти могут возникать по разным причинам. Однако я полагаю, что при использовании Angular можно столкнуться с паттерном, который соответствует самой распространённой причине возникновения утечек памяти. Существует и способ борьбы с такими утечками памяти. А лучше всего, конечно, не бороться с проблемами, а избегать их.
Читать полностью »
Как помнить всех в лицо, или эффективный поиск лиц в большой базе
2020-05-22 в 19:10, admin, рубрики: postgresql, Администрирование баз данных, Алгоритмы, машинное обучение, поиск лиц, Программирование, распознавапние лиц, хранени распознанных лиц, хранение эмбендинговО себе
Здравствуй! Меня зовут Павел, я работаю техническим директором в компании, занимающейся производством IoT устройств. Производим много чего — начиная от контроллеров для умных домов, заканчивая умными приборами учёта на своём запатентованном протоколе сенсорных сетей.
Также исполняют обязанности генерального директора ит-компании. В прошлом полуфиналист ЧМ по программированию ACM ICPC.
Мотивация
Пишу я это статью потому, что наша команда убила около месяца на поиск решения (ещё недели две на реализацию и написание тестов) для хранения и эффективного поиска распознанных лиц в базе данных, с целью сэкономить время вам в ваших проектах. Спойлер: ничего готового вроде классного плагина для существующей СУБД не нашли, а сроки полыхали, по этому написали свою СУБД именно для этой задачи (хранения огромного количества эмбендингов лиц). Моя статья ни в коем случае не претендует на звание исчерпывающего руководства, но, я надеюсь, что она даст точку старта для дальнейшего изучения и развития наших мыслей.
Эмбеддинг – это отображение из дискретного вектора категориальных признаков в непрерывный вектор с заранее заданной размерностью.
Tech Talks Delivery Club на РИТ++
2020-05-22 в 14:29, admin, рубрики: agile, android, Delivery Club, deliveryclub, Engineering, golang, innersource, iOS, php, product development, superapp, Блог компании Delivery Club Tech, Блог компании Mail.Ru Group, конференции, Программирование, Управление продуктом
Привет! Hello, World!
Меня зовут Андрей Евсюков, я заместитель технического директора в Delivery Club. А это первый пост в нашем блоге на Хабре. Сегодня расскажу о том, как и где можно узнать про разработку, процессы и команду Delivery Club. Спойлер: до сих пор никто так много не знал, как устроен DC Tech.
Читать полностью »
Как думают программисты-сеньоры?
2020-05-22 в 14:17, admin, рубрики: Блог компании RUVDS.com, карьера, Карьера в IT-индустрии, Лайфхаки для гиков, Программирование, разработкаАвтор материала, перевод которого мы публикуем сегодня, поддерживает идею Ральфа Уолдо Эмерсона о том, что мы становимся тем, о чём думаем. Здесь пойдёт речь об образе мыслей программистов-сеньоров.
Профессия: программист. Не всё однозначно
2020-05-22 в 10:13, admin, рубрики: ruvds, Блог компании RUVDS.com, карьера, Карьера в IT-индустрии, Программирование, программистМы писали о фронтендерах и бэкендерах, о мобильной разработке и о тестировании, но это были частные случаи. Когда человек подходит к первой или очередной профессии, он редко говорит, что станет разработчиком под iOS или проктологом, как правило это звучит «программистом» и «врачом». Специализация приходит позже, с опытом. Но чтобы твёрдо заявить, что ты хочешь стать программистом, врачом, архитектором, геологом и т.д., нужно избавиться от романтизации профессии и подойти к ней здраво и осмысленно. Даже если вы вдруг решили стать программистом, чтобы «войти в айти после 35-ти». Если говорить о программистах с позиций романтики, то это люди, которые превращают наши замыслы в код и делают жизнь лучше, проще, удобнее. Если говорить прямо, то работа программиста — напряжённый, зачастую рутинный труд с множеством плюсов и минусов. Об этом и поговорим.
«Я — первый слепой разработчик в своей компании». Часть 1
2020-05-22 в 7:22, admin, рубрики: it-эмиграция, Биографии гиков, Блог компании Skyeng, Карьера в IT-индустрии, онлайн-трансляция, переезд в Германию, Программирование, программирование для незрячих, слепые люди, собеседования в итТо, что я не вижу, стало ясно в первые месяцы после рождения. Сколько родители ни пытались, зрение восстановить не удалось. С четырёх лет я учился читать и писать по Брайлю.
Мне невероятно повезло с людьми вокруг. У меня были хорошие учителя, была музыкальная школа, где я нормально общался с обычными ребятами. Благодаря этому понял, что вариться только в слепецкой среде, — не лучший путь для развития. Начал идти в другую сторону, и в итоге реализовал мечту.
Вот уже полгода я работаю настоящим software engineer. В самой обычной команде. До сих пор не верится)