Так себе программист
98 subscribers
185 photos
7 videos
1 file
183 links
Меня зовут Александр Троценко. Разработчик, преподаватель, к.т.н. Пишу о программировании и профессии.

10 лет в разработке desktop на C/С++

Контент: https://taplink.cc/atrotsenko
Download Telegram
Графический интерфейс в PlantUML

Видели, что в PlantUML можно создавать схемы графических интерфейсов?

На днях попробовал собрать там схему новой вкладки для YouTube Analyzer (на картинке выше). Резюмируя, инструмент вполне юзабельный. Учитывая время на изучение, на все про все я потратил чуть больше часа.

Кому-то может показаться, что схема слишком далека от реальности. Но схема на то и схема. Здесь важен тип элементов и их взаимное расположение.

Для таких схем я обычно использовал drawio, либо просто рисовал их от руки. Теперь в арсенале будет еще и PlantUML.

В комментах оставлю код схемы с картинки.
👍5
#include <iostream>

int main() {
int a[3][3] = {
{1, 2, 3},
{4, 5, 6},
{7, 8, 9}
};
int* aPtr = &a[1][1];
std::cout << aPtr[0]
<< aPtr[1]
<< aPtr[2];
return 0;
}
🤯4
Выше дан код C++. Какой вывод будет у программы?
Anonymous Quiz
14%
456
33%
567
29%
123
24%
147
🙏3
Путаница в интерфейсах (часть 7)

Открываю настройки в Яндекс Книгах (слева), чтобы что-то переключить и... начинаю всматриваться, что тут вообще включено, а что нет.

Так много переключателей и так мало контраста. Визуально почти не отличить.

А ведь можно же и по-другому. В Яндекс Музыке (справа) с этим никаких проблем 👍

—

Ранее в сериале Путаница в интерфейсах (часть 6)
👍4❤1
#include <iostream>

int main() {
const int factors[6] = {4, 4, 7, 1, 7, 19};
int val = 0;

for (int i = 0; i < 6; ++i) {
val += factors[i];
std::cout << val << " ";
}

return 0;
}


Для ленивых подсказка на картинке 👇
😁2
Выше дан код C++. Какой вывод будет у программы?
Anonymous Quiz
17%
4 4 7 1 7 19
78%
4 8 15 16 23 42
6%
4 8 11 13 22 26
0%
4 11 8 8 26 23
Хронологическая организация документации

Вдохновился статьей Isaac Lyman "Documents: The architect’s programming language" и запилил главную мысль на карточках. Ну, то есть главную мысль для меня. Для вас главная мысль может быть другая 🤓

Рекомендую пробежаться по самой статье, если работаете с документацией (а кто ж с ней не работает то).

—

P.S. Прорыв, я научился делать карточки! Как вам?
👍 - норм, еще
👎 - не, лучше текст
👍8
Тест на формальную логику 👇

1. A и (B или C) = (A и В) или (А и C)

2. A или (B и C) = (A или В) и (А или C)
😱5
Выше даны логические выражения. Какое из них истинно?
Anonymous Quiz
41%
Первое
18%
Второе
27%
Оба истинны
14%
Оба ложны
Нет, это не майнкрафт

Мне показали на днях тулзу Grappl, которая на основе кода проекта строит вот такие блочные города ☝️
Небольшой городок на картинке - это наш проект YouTube Analyzer.

Домики обозначают папки, файлы, пространства имен, классы, структуры и функции. А размер домика или района отражает объем кода этих элементов.

Честно говоря, великой практической пользы от этой картинки я не увидел. Есть и более простые инструменты для расчета метрик кода.

Единственное, где такая визуализация может помочь, - это протаскивание рефакторинга в план производства. Картинка с небоскребами на фоне одноэтажной застройки наглядно покажет необходимость разбиения компонентов))

Попробовать инструмент самостоятельно можно с помощью расширения к VS Code. Посмотрите на свои проекты.
🔥4
Сегодня новый тест по C++ ... не родился.
Официально заявляю, что за эту неделю не попалось ничего интересного. Рутина.

Поэтому расслабляемся, смотрим на картинку и сопоставляем ответ 👇
😁1
В «Яндекс Картах» ИИ начал давать детальные подсказки по маршруту


Есть же! Писал еще полтора года назад, когда в очередной раз заехал не в тот съезд на большой развязке. Именно таких подсказок тогда не хватало!

Новые виды голосовых подсказок в «Картах» и «Навигаторе» (с примерами):

- указатели: «Поверните направо по указателю „МКАД“»;

- дорожные ориентиры: «Съезд у моста»;

- названия улиц: «Сверните на Малую Бронную»;

- полосы: «Через 400 метров держитесь второй правой полосы по указателю „МКАД“»;

- номер съезда: «Сверните на втором съезде».


Лайк-огонь-подписка, короче 👍

Осталось только найти место, где все это будет работать)
👍2😁1
Release Notes или Changelog

Пока я прикидывал, где бы разместить список заметок по всем релизам для 📱 YouTube Analyzer, появилась идея рассказать вам, чем отличается "Release notes" от "Changelog". Ибо и то, и другое можно увидеть в любом развивающемся продукте.

Оба термина связаны с выпусками новых версий софта, но преследуют они разные цели.

Changelog — это полный, технически ориентированный журнал всех изменений в проекте. Он ведется по ходу разработки и включает новые фичи, багфиксы, мельчайшие правки, улучшения и т.д. Его главные пользователи — разработчики и тестировщики.

Release notes
 — это выжимка самого важного из changelog'а, подготовленная для конечного пользователя. Акцент делается на новых возможностях и исправленных ошибках. То есть на том, что видит пользователь.

Проще говоря, changelog — для разработчиков, а release notes — для пользователя. Отсюда идут и различия в оформлении. Changelog'и обычно оформляются "сухим" текстом, в то время как release notes упаковываются интереснее: там могут быть картинки, гифки, видео.

Думаю, что когда мы закончим работу над новой версией YouTube Analyzer, я покажу вам как оформлены его release notes. Заодно рассмотрим примеры и с других проектов. Будем повышать насмотренность )

—

Ранее в сериале #Словарь : Гонка данных или состояние гонки
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4