#структуры — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #структуры, aggregated by home.social.
-
[Перевод] Соглашения по именованию в Go: практическое руководство
В Go легко написать код, который компилируется, но раздражает при чтении: слишком длинные receiver’ы, странные имена пакетов, лишние повторы в вызовах, хаотичный регистр и utils , который постепенно превращается в свалку. Для начинающего Go-разработчика соглашения по именованию могут выглядеть как набор мелких вкусовых правил, хотя на практике они влияют на навигацию по проекту, читаемость API и стоимость будущего рефакторинга. В статье разберем основные правила и идиомы именования в Go – от идентификаторов и пакетов до методов, интерфейсов и геттеров – с примерами удачных и неудачных решений. Разобраться в Go
https://habr.com/ru/companies/otus/articles/1031544/
#go #golang #именование_в_Go #соглашения_по_именованию #идентификаторы #интерфейсы #структуры #имена_пакетов
-
Ненормальные непотребства, трюки, хаки и алгоритмы на C
Доброго времени суток, господа и дамы! Иногда у некоторых людей возникает желание заняться откровенным непотребством в программировании — то, что не несет практической пользы напрямую, но помогает развлечься. И я — не исключение. В этой статье я хочу рассказать вам о лайфхаках, трюках (магических и не очень), алгоритмах на языке C! Идея написать эту статью зародилась из моего поста , после него я начал серию статей, которая раскрывала много интересных моментов — от математических алгоритмов и оптимизации до ГПСЧ. Если вы видите на экране эту шестую часть нашей бесконечной саги о ненормальном программировании на C, значит, мы с вами прошли уже немало: от конвертации миль в километры через Фибоначчи до ГПСЧ и быстрых вычислений. В этой статье будет еще порция свежих хаков, фанов, трюков, еще больше магии и скорости! Добро пожаловать в шестую часть. Прошу под кат — там будет жарко, быстро и очень, очень интересно.
https://habr.com/ru/companies/timeweb/articles/977208/
#c #ненормальное_программирование #трюки #хаки #фаны #алгоритмы #структуры #си #timeweb_статьи
-
Ненормальные непотребства, трюки, хаки и алгоритмы на C
Доброго времени суток, господа и дамы! Иногда у некоторых людей возникает желание заняться откровенным непотребством в программировании — то, что не несет практической пользы напрямую, но помогает развлечься. И я — не исключение. В этой статье я хочу рассказать вам о лайфхаках, трюках (магических и не очень), алгоритмах на языке C! Идея написать эту статью зародилась из моего поста , после него я начал серию статей, которая раскрывала много интересных моментов — от математических алгоритмов и оптимизации до ГПСЧ. Если вы видите на экране эту шестую часть нашей бесконечной саги о ненормальном программировании на C, значит, мы с вами прошли уже немало: от конвертации миль в километры через Фибоначчи до ГПСЧ и быстрых вычислений. В этой статье будет еще порция свежих хаков, фанов, трюков, еще больше магии и скорости! Добро пожаловать в шестую часть. Прошу под кат — там будет жарко, быстро и очень, очень интересно.
https://habr.com/ru/companies/timeweb/articles/977208/
#c #ненормальное_программирование #трюки #хаки #фаны #алгоритмы #структуры #си #timeweb_статьи
-
Ненормальные непотребства, трюки, хаки и алгоритмы на C
Доброго времени суток, господа и дамы! Иногда у некоторых людей возникает желание заняться откровенным непотребством в программировании — то, что не несет практической пользы напрямую, но помогает развлечься. И я — не исключение. В этой статье я хочу рассказать вам о лайфхаках, трюках (магических и не очень), алгоритмах на языке C! Идея написать эту статью зародилась из моего поста , после него я начал серию статей, которая раскрывала много интересных моментов — от математических алгоритмов и оптимизации до ГПСЧ. Если вы видите на экране эту шестую часть нашей бесконечной саги о ненормальном программировании на C, значит, мы с вами прошли уже немало: от конвертации миль в километры через Фибоначчи до ГПСЧ и быстрых вычислений. В этой статье будет еще порция свежих хаков, фанов, трюков, еще больше магии и скорости! Добро пожаловать в шестую часть. Прошу под кат — там будет жарко, быстро и очень, очень интересно.
https://habr.com/ru/companies/timeweb/articles/977208/
#c #ненормальное_программирование #трюки #хаки #фаны #алгоритмы #структуры #си #timeweb_статьи
-
Ненормальные непотребства, трюки, хаки и алгоритмы на C
Доброго времени суток, господа и дамы! Иногда у некоторых людей возникает желание заняться откровенным непотребством в программировании — то, что не несет практической пользы напрямую, но помогает развлечься. И я — не исключение. В этой статье я хочу рассказать вам о лайфхаках, трюках (магических и не очень), алгоритмах на языке C! Идея написать эту статью зародилась из моего поста , после него я начал серию статей, которая раскрывала много интересных моментов — от математических алгоритмов и оптимизации до ГПСЧ. Если вы видите на экране эту шестую часть нашей бесконечной саги о ненормальном программировании на C, значит, мы с вами прошли уже немало: от конвертации миль в километры через Фибоначчи до ГПСЧ и быстрых вычислений. В этой статье будет еще порция свежих хаков, фанов, трюков, еще больше магии и скорости! Добро пожаловать в шестую часть. Прошу под кат — там будет жарко, быстро и очень, очень интересно.
https://habr.com/ru/companies/timeweb/articles/977208/
#c #ненормальное_программирование #трюки #хаки #фаны #алгоритмы #структуры #си #timeweb_статьи
-
Был FSD — стал MSD: как мы допилили методологию FSD, чтобы поудобнее делить монолит на модули
Что важно фронтенд-разработчику при создании веб-приложений? Поддержка текущей кодовой базы, удобство внедрения новых фич и возможность повторно использовать компоненты. Создать такие условия помогает популярный подход к проектированию — FSD (Feature Sliced Design). Разбиваем интерфейс на независимые, переиспользуемые модули (виджеты, фичи и т. д.), получаем чёткие правила, единую структуру проекта и ускорение разработки за счёт переиспользования кода и изоляции ответственности. Подход FSD во многом прекрасен, но всё же нам в нём не хватало некоторых важных аспектов: внятного разделения слоёв бизнес-логики, удобства работы с кастомными хуками (они быстро разрастаются, обрастают связями и становятся сложными для тестирования). Также было неясно, куда выносить сложные общие компоненты из разных частей проекта. И, например, как легко отделять один бизнес-модуль от другого, не ломая всю систему… Меня зовут Иван Соснович, я тимлид фронтенд-разработки в СберТехе, тружусь в команде
https://habr.com/ru/companies/sberbank/articles/959400/
#сбертех #kintsugi #pangolin #сбербанк #frontend #react #структуры #модули #fsd #микросервисы
-
Структуры данных. Часть 1
Нельзя стать отличным программистом без глубокого понимания структур данных, потому что программирование - это написание алгоритмов и выбор подходящей структуры данных для этого алгоритма. Алгоритм говорит компьютеру, что делать, а структура говорит компьютеру, как хранить данные из алгоритма. В этой статье мы рассмотрим такие структуры данных как: списки, кортежи и словари.
https://habr.com/ru/articles/955972/
#структуры #структура #список #списки #словарь #словари #кортежи #кортеж #данные #структуры_данных
-
Структуры данных. Часть 1
Нельзя стать отличным программистом без глубокого понимания структур данных, потому что программирование - это написание алгоритмов и выбор подходящей структуры данных для этого алгоритма. Алгоритм говорит компьютеру, что делать, а структура говорит компьютеру, как хранить данные из алгоритма. В этой статье мы рассмотрим такие структуры данных как: списки, кортежи и словари.
https://habr.com/ru/articles/955972/
#структуры #структура #список #списки #словарь #словари #кортежи #кортеж #данные #структуры_данных
-
Структуры данных. Часть 1
Нельзя стать отличным программистом без глубокого понимания структур данных, потому что программирование - это написание алгоритмов и выбор подходящей структуры данных для этого алгоритма. Алгоритм говорит компьютеру, что делать, а структура говорит компьютеру, как хранить данные из алгоритма. В этой статье мы рассмотрим такие структуры данных как: списки, кортежи и словари.
https://habr.com/ru/articles/955972/
#структуры #структура #список #списки #словарь #словари #кортежи #кортеж #данные #структуры_данных
-
Структуры данных. Часть 1
Нельзя стать отличным программистом без глубокого понимания структур данных, потому что программирование - это написание алгоритмов и выбор подходящей структуры данных для этого алгоритма. Алгоритм говорит компьютеру, что делать, а структура говорит компьютеру, как хранить данные из алгоритма. В этой статье мы рассмотрим такие структуры данных как: списки, кортежи и словари.
https://habr.com/ru/articles/955972/
#структуры #структура #список #списки #словарь #словари #кортежи #кортеж #данные #структуры_данных
-
Прочитал статью про #ABBYY и их лингвистическую вундервафлю. Мне близка и интересна машинная интерпретация языка, пусть я и не лингвист и по работе никогда чем-то похожим не занимался - всё на уровне хобби - бредящие твиттерботы, полуручная заготовка "сырья" для них, всё это ( https://github.com/strizhechenko/epythets ) почему-то показалось мне ух каким весёлым.
В интерфейсах есть такой элемент - #дерево элементов. Реестр в Windows, список папок в thunderbird, проводник, что там ещё. До тех пор:
- пока от него не хотят много - проблем нет
- пока его структуру кто-то целенаправленно контроллирует - проблем почти нет.И вот их подход был в виде "правильной формальной древовидной структуры, требующей обслуживания" и в статье говорится, что цепляние за эту концепцию в качестве основы системы-переводчика их и погубило (ну пока не погубило, но в процессе, #нейросети обгоняют в экономическом плане, или штат лингвистов или стопка видеокарт, которая матрицы перемножит и случится чудо, стагнация, все дела).
Я несколько раз видел, как компании, разрабатывающие продукты, отказываются от них в пользу полнотекстового поиска.
Когда от дерева начинают *хотеть многого*, особенно если это веб-приложение, например, показывать метаинформацию об элементе, типа число непрочитанных писем внутри папки - его пересчёт становится дороже. Если элементы дерева имеют разные типы и считают доп. информацию по-разному - пересчёт тоже дорожает. А самое неприятное - если этим деревом пользуются несколько пользователей и число элементов в нём растёт, растёт, нужно где-то хранить и как-то передавать список развёрнутых узлов, чтобы пересчитывать не вообще всё и при этом помнить, что клиент держит развёрнутым, а что нет... Чувствуете комбинаторный взрыв, которому кэширование и предвычисление - как мёртвому припарка?
Проблема два - контроль за структурой. Увы, #деревья - это как улицы. Чисто там, где:
- не мусорят
- убирают
- никто не живёт (частный случай п. 1)Может я луддит, который за эти самые деревья цепляется (один из примеров - структура каталогов в моих заметках-планировщике-дневнике), но блин, дерево - прекрасная вещь. Да, на систематизацию уходит время, но до чего же приятно найти нужный элемент, когда забыл его названия и не можешь придумать по каким словам ещё искать, просто подумав, где бы ты его расположил. В моём случае ещё и "когда" помогает - я обычно заметки маркирую датой в названии (то есть тут даже find + grep помогли бы).
Берегите деревья!
-
Кастомная сериализация структур в UE
Допустим, вы создали свою USTRUCT в C++ и хотите её сериализовать. Обычно, достаточно просто пометить нужные поля как SaveGame . Но вот проблема, для этого эти поля сами должны поддерживать сериализацию. К сожалению одна из наших переменных не поддерживает сериализацию. В моем случае, это структура FNonSerializableStruct . Из-за этого сериализуется только вторая структура, хоть мы и пометили SaveGame обе.
https://habr.com/ru/articles/865170/
#usrtuct #struct #serialize #serializable #структура #сериализация #unreal_engine #ue #структуры #анрил
-
Кастомная сериализация структур в UE
Допустим, вы создали свою USTRUCT в C++ и хотите её сериализовать. Обычно, достаточно просто пометить нужные поля как SaveGame . Но вот проблема, для этого эти поля сами должны поддерживать сериализацию. К сожалению одна из наших переменных не поддерживает сериализацию. В моем случае, это структура FNonSerializableStruct . Из-за этого сериализуется только вторая структура, хоть мы и пометили SaveGame обе.
https://habr.com/ru/articles/865170/
#usrtuct #struct #serialize #serializable #структура #сериализация #unreal_engine #ue #структуры #анрил
-
Кастомная сериализация структур в UE
Допустим, вы создали свою USTRUCT в C++ и хотите её сериализовать. Обычно, достаточно просто пометить нужные поля как SaveGame . Но вот проблема, для этого эти поля сами должны поддерживать сериализацию. К сожалению одна из наших переменных не поддерживает сериализацию. В моем случае, это структура FNonSerializableStruct . Из-за этого сериализуется только вторая структура, хоть мы и пометили SaveGame обе.
https://habr.com/ru/articles/865170/
#usrtuct #struct #serialize #serializable #структура #сериализация #unreal_engine #ue #структуры #анрил
-
Кастомная сериализация структур в UE
Допустим, вы создали свою USTRUCT в C++ и хотите её сериализовать. Обычно, достаточно просто пометить нужные поля как SaveGame . Но вот проблема, для этого эти поля сами должны поддерживать сериализацию. К сожалению одна из наших переменных не поддерживает сериализацию. В моем случае, это структура FNonSerializableStruct . Из-за этого сериализуется только вторая структура, хоть мы и пометили SaveGame обе.
https://habr.com/ru/articles/865170/
#usrtuct #struct #serialize #serializable #структура #сериализация #unreal_engine #ue #структуры #анрил
-
«Алгоритмы» vs «Структуры данных»
И снова здравствуйте! На днях угораздило меня писать про алгоритмы. И писал я про них всяко и всякое. И то, что вертел я их на местах причинных, и то, что без них жизни своей программистской не представляю в случаях критических, моментах важных, выборах трудных. Ну и раз взял на себя оный труд, то ничто так не мотивирует на его продолжение, как положительные отзывы. По этому решил я эту тему продолжать. Хотя, правды ради и прохождения полиграфа для, я бы всё равно не выдержал и написал бы что-нибудь про это ещё. Сего дня я решил, что напишу про алгоритмы структур данных. Про те, которые смогу вспомнить. И, как говорит наш дорогой шеф: «Погнали!»