Anticodeguy
Ir al canal en Telegram
Technomad & systems thinker exploring paths to freedom and prosperity https://stan.store/anticodeguy
Mostrar más651
Suscriptores
Sin datos24 horas
Sin datos7 días
-330 días
Archivo de publicaciones
651
Будущее за no-code! Cкажу я и сразу же попаду в хейт-лист матёрых кодеров, которые после этих слов начинают агриться и неистово спорить о том, что no-code никогда не заменит настоящую разработку и что это всё игрульки для всяких несерьёзных проектов и всё в этом духе. Можно сколько угодно спорить на эту тему до потери пульса и с пеной во рту, но имеем, что имеем.
Так наш паззл сложился. Складывал его из нескольких постов выше. И что у нас получается в итоге, давай посмотрим.
1. Две операционные системы iOS и Android.
2. Два нативных (для простоты два возьмём два) языка разработки: Swift для iOS и Kotlin для Android.
3. Поверх них фреймворки, которые позволяют, во-первых, ускорить э-э разработку, если это специфичный под одну платформу фреймворк, либо ускорить его в два раза в случае кроссплатформенных фреймворков.
4. Ну, и наконец на этих фреймворках есть, no-code и low-code приложения, которые позволяют даже не углубляясь в технические детали того, как они и уж тем более в программный код работают, создать мобильное приложение.
Фух, неплохая получилась серия постов на мой взгляд. А что ты думаешь? Интересно было, продолжать в таком же духе или поговорим на какие-нибудь другие темы? Напиши в комментарии, мне правда очень интересно знать, что ты думаешь по поводу мобильной разработки.
651
Но ты же писал, что сделал мобильное приложение без единой строчки кода!
Да так есть. Я пользовался преимуществами следующего следующей штуки под названием framework (фреймворк). Что такое фреймворк, я рассказывал вот в этом посте, а сегодня поведаю про то, как можно написать мобильное приложение под обе операционной системы и при этом не знать языков программирования одной и второй одновременно.
Итак, на помощь нам приходят фреймворки, которые позволяют разрабатывать мобильные приложения под обе платформы, используя только одну кодовую базу. И эта кодовая база, по сути, является не тем самым программным кодом, который непосредственно исполняется программной средой, а описанием структуры, которая формирует нужный нам программный код под капотом.
Надо заметить, что фреймворки не относятся только к мобильным приложениям. И только некоторые из них являются кроссплатформенными. А вообще фреймворков всяких масса и не только в программировании, кстати.
Для мобильных приложений дело опять не обошлось без больших дядь. Компания Google выпустила свой собственный фреймворк под язык Dart (Дарт), на котором можно писать мобильные приложения, и он называется Flutter (Флаттер), про него я уже упоминал ранее. Flutter – это фреймворк и одновременно SDK (ЭсДиКей) или Software Development Kit (комплект разработки). Он состоит из готовых библиотек, которые можно использовать для того, чтобы собрать, как из кубиков конструктора, приложение. Причём под обе платформы одновременно.
Второй гигант, который пришел на помощь разработчикам – это Facebook (сейчас уже Meta), и они придумали Reract Native (Реакт Нейтив) – фреймворк, на котором, кстати, написано мобильное приложение Facebook и оно тоже является кроссплатформенным. То есть, используя одну кодовую базу, написанную на React Native, мы получаем два мобильных приложения, которые одинаково работают под iOS и под Android.
Фреймворки хороши тем, что позволяют проектировать мобильное приложение не с самой базы, основы, а наоборот с конца, с интерфейса или с тех компонентов визуальных, из которых состоит интерфейс мобильного приложения. Это немного похоже на те блоки, которые мы видим в конструкторах сайтов, если можно представить что-то подобное для создания мобильного приложения. Есть у них что-то общее. Но, тем не менее, даже готовые блоки нужно соединять между собой таким образом, чтобы всё это функционировало и работало как надо на девайсах.
Именно фреймворки позволяют разработчику не учить оба программных языка для того, чтобы делать мобильное приложение, а выучить один фреймворк. И это, конечно же, удешевляет и ускоряет разработку, так как у тебя одна кодовая база, за которой нужно следить, а не два разных абсолютно приложения, которые живут своей жизнью и которые могут даже разъехаться по функциям. Нет, ты делаешь одно приложение, которое работает на двух платформах одновременно, что является утилизационным преимуществом перед базовым языком программирования.
651
Языки программирования или на чём же всё-таки пишут мобильные приложения
Итак, у нас есть две операционные системы: iOS и Android. И две компании продвигают свои собственные нативные или родные языки программирования для написания приложений под свою платформу. Для Android это Kotlin (Котлин) и Java (Джава), на котором написана сама операционная система Android. Разумеется, мобильное приложение тоже может быть написано на языке Java, но Google занимается тем, что продвигает свой собственный язык Kotlin, являющийся по сути обёрткой над Java. Понятное дело, для них это тоже крайне важный аспект развития собственной экосистемы, поэтому всё чаще встречается потребность разработки именно на языке Kotlin.
Apple идёт своей дорогой: у них два официальных языка, это старенький Objective-C (Обджектив-Си) и более современный Swift (Свифт).
Итак, когда мы видим потребность в программистах на языке Swift или Kotlin, то теперь мы можем понять, что в первом случае это означает, что нам необходимо будет писать мобильное приложение для операционной системы iOS, во втором речь идёт про разработку под Android.
Это всё «родные» языки, а есть ещё и ненативные, потому что мобильное приложение может быть написано на самом деле на другом языке программирования. Главное, чтобы конечный скомпилированный файл соответствовал всем требованиям операционной системы и тем правилам, которые позволят загрузить его в соответствующий стор.
Так, например, мобильные приложения для Андроида могут быть написаны на Python (Пайтон) или C/C++ (Си плас плас). Правда в обоих случаях придётся приспособить свою разработку под платформу, прикрутив сверху дополнительные библиотеки. Но программисты же не ищут лёгкий путей, правда?
В одном из прошлых постов я уже говорил про то, что, как правило, разработчики под iOS и под Android – это разные люди, потому что они знают разные языки программирования. Но из этого есть исключения, о чём я расскажу в следующем посте.
651
Программный код мобильного приложения
Как же он пишется, с помощью чего его создают и как это вообще, всё работает.
У нас две операционные системы, соответственно две разных среды для разработки. Компания Apple предоставляет Xcode, а Google – Android Studio. Это две программные среды, в которых можно разрабатывать приложения под соответствующую операционную систему. По своей сути это программы, которые устанавливаются на компьютер и с их помощью можно создавать программный код мобильного приложения, компилировать готовые файлы, исправлять ошибки, заниматься тестированием и прочими прелестями разработки.
Ну а базовые функции этих средств – это редактирование кода. Программный код – это, по сути, текстовый файл, который состоит из написанных на определённом языке программирования команд для той исполняемой среды, где этот код будет выполняться.
Если быть совсем грубым, то программный код можно писать хоть в блокноте. Но средства написания программного кода очень сильно развиваются и сейчас эти программные среды, которые я назвал, Xcode и Android Studio – очень продвинутые, современные, они позволяют всё делать очень удобно для программиста и очень быстро. Ну, и, естественно, всё сразу интегрировано в ту оболочку, в которой это приложение будет работать.
Например, там есть встроенные эмуляторы мобильных устройств. Таким образом даже не нужно скачивать само написанное приложение на реальный смартфон, чтобы его протестировать, а можно это делать прямо на мониторе своего компьютера и результат работы будет точно таким же как на настоящем девайсе.
Это очень удобно и экономит время. Ну и, наконец, возможности подключения различных расширений, библиотек, готовых решений, модулей и прочих полезностей очень сильно упрощает процесс создания приложения для разработчика. Именно поэтому они и пользуются этими средами.
651
Что же из себя представляет мобильное приложение
Базово мобильное приложение – это программа, которая работает в среде операционной системы Android или iOS. Программа – это некий набор инструкций, который говорит операционной системе, что делать в том, или ином случае.
То есть, например, когда мы нажимаем на кнопку Сториз, нужно запустить камеру устройства, когда мы нажимаем на кнопку «Войти», нужно показать пользователю форму входа и другие подобные действия. То есть набор таких инструкций, которые позволяют чётко понять операционной системе, что делать, когда пользователь совершает определённые действия.
Весь этот набор инструкций, разумеется, пишется с помощью программного кода, про который мы поговорим чуть позже. И собирается всё в отдельную пачку или папку из этих инструкций, если представить себе такую аналогию. Или, говоря более техническим языком, компилируется в один исполняемый файл. Это тот самый файл, который мы скачиваем из стора товара, когда нажимаем на кнопку установки приложения, будь то Google Play Store или AppStore. При этом на наше устройство скачивается файл, тот самый скомпилированный набор инструкций для операционной системы.
Дальше скачанный файл разворачивается, то есть определённым образом устанавливается в операционную систему для того, чтобы начать с ней функционировать нормально. Всё это происходит похожим образом на то, как это работает в операционной системе компьютера macOS или Windows.
Если продолжить аналогию с нашим набором инструкций, то это распаковывание архива со всеми этими бумажками и раскладывание их по определённым полочкам и местам в кабинете, чтобы мы знали, к какой инструкции в какой момент обратиться. Таким образом у нас имеется комната, где мы расположили все эти инструкции, то есть имеются листы бумаги с написанными шагами и действиями, и теперь любой человек сможет войти в кабинет и воспользоваться или. Так же, как и операционной системе чётко понятно, что нужно делать в том, или ином случае.
Так как у нас две разные операционные системы, то, естественно, набор этих инструкций будет друг от друга отличаться. И, соответственно, те файлы, которые из себя представляют мобильное приложение, они тоже разные. Про то, каким образом пишутся эти наборы инструкций, то есть программный код приложения и компилируются в файлы, я расскажу дальше.
Напиши комментарий, насколько понятно я пытаюсь объяснить тему и надо ли ещё куда-то углубиться детальнее.
651
Я надеюсь, что тебе уже удалось сгенерировать десяток-другой картинок с помощью нейронки. Если ещё нет, читай в предыдущем посте, как это сделать. А в этом я напишу несколько дополнительных команд, которые немного расширят вариативность результатов.
Что это за команды такие? Это параметры, которые указывают системе под капотом, на что повлиять при генерации изображений. Так как мы работаем с помощью интерфейса, в котором можно только вводить текст, то и команды системе мы будем передавать текстом.
Это всё очень просто, после основного запроса нужно добавить определённые символы в соответствии тому, что хотим получить.
--hd
Введя эту команду, мы обратимся к более старому алгоритму, который потенциально лучше работает для больших изображений, но при этом композиция будет менее консистентной (что бы это ни значило в терминологии разработчика). Эта штука хорошо подходит для генерации пейзажей и абстрактных картинок.
--ar
Эта команда позволяет задать любое соотношение сторон. По умолчанию это 1:1, то есть квадрат с равными сторонами. Соотношение нужно указывать через пробел после команды. Если напишешь, например, --ar 16:9, то генератор выдаст широкоформатную картинку.
--no
Используется, если надо что-то исключить. Например, ты не хочешь, чтобы на картинке были люди. Тогда после запроса нужно добавить --no people.
--s
Меняет художественность или креативность итогового изображения. После команды надо ввести числовое значение от 625 до 60000. Если задать --s 625, то никаких креативных отклонений от составленного запроса не будет. Значение по умолчанию --s 2500, то есть его можно не писать. А вот если мы зададим --s 60000, то, как пишут сами разработчики, «кто знает, что произойдёт» и результат может очень сильно отличаться от того, что мы запросили.
Как тебе? Ставь лайк или другую реакцию, чтобы мне понимать, как тебе заходит контент. И присылай в комментарии свои работы из Midjorney – всегда интересно разглядывать, что там получается.
651
Итак, ты в Дисе (сленговое от Дискорд). Если нет, то в предыдущем посте читай, как там зарегистрироваться.
У тебя должно быть запущено приложение на компьютере или смартфоне. Заходи на сайт https://www.midjourney.com/ и нажимай ‘Join the Beta’. Тебя перебросит на страницу приглашения в Дискорд-сервер Midjorney, которое нужно принять, нажав ‘Accept Invite’. После этого должно открыться само приложение Discord и нужный нам сервер. Если этого не произошло автоматически, то нажимай на кнопку ‘Continue to Discord’, она должна появиться сразу после принятия приглашения.
В Дискорде ты увидишь много разных каналов и чатов Midjorney. Ищи чаты под секциями NEWCOMER ROOMS (комнаты новичков) и нажимай на любой из этих чатов. Здесь и происходит вся магия. Ты можешь увидеть в ленте огромное количество генерируемых нейронкой картинок. Советую для начала полистать и немного прифигеть от её возможностей.
Но мы тут для того, чтобы сгенерировать что-то для себя. Итак, в строке ввода текста нужно поставить наклонную чёрточку / для ввода команды боту. После этого появится выпадающий список команд. Нас интересует самая первая – /imagine, выбираем её. После этого в строке ввода появляется слово ‘prompt’, после которого можно писать свой запрос на генерацию. Писать нужно на английском языке и чем больше деталей ты напишешь, тем точнее с учётом этого нейронка сгенерирует результат.
Можно написать, например ‘website design for airline tickets’ и получить дизайн для сайта авиабилетов (кто бы мог подумать)! Запрос ‘Plant form, future, elves, nature, virtual worlds, reproduction, growth, transboundary, beauty, meta-universe, different worlds’ выдаст вообще что-то невообразимое. В общем фантазируй смело.
Через некоторое время (обычно не больше пары минут) ты получишь набор из 4 вариантов, которые в этом же чате выдаст нейронная сеть. Под ними будут кнопки: U1-U4 – для выбора изображения, которое нужно скачать в высоком разрешении. Нажимай на них, чтобы получить готовый результат. Кнопки V1-V4 позволяют сделать вариации понравившегося изображения, то есть сгенерировать новую порцию картинок. И круговая стрелка запустит генерацию повторно.
Чтобы сохранить изображение, нажми на него. Откроется его увеличенная версия, под которой будет ссылка Open in Browser. Нажми на неё, тебя перекинет в браузер с этой картинкой и уже отсюда сможешь «Сохранить как» в формате PNG.
Если что-то непонятно, спрашивай в комметах.
651
Ну что, время обжорства и отдыха закончилось, пора за работу. И начнём мы с того, что будем осваивать Midjorney, про который я писал в предыдущем посте. Для того, чтобы поработать с этим инструментом, тебе нужно будет завести аккаунт в другом инструменте, про который я как раз и расскажу сегодняшнем посте.
Вся работа в Midjorney происходит через специальный чат-бот в Дискорде. Discord (Дискорд) – это платформа для создания комьюнити. Если вдруг тебе ничего про неё неизвестно, то рекомендую, как минимум, обратить на внимание, а в идеале зарегистрироваться. Там на самом деле много чего интересного происходит, например, можно найти различные сообщества по интересам.
Что это такое? Например, там есть комьюнити дизайнеров, программистов, архитекторов, любых других профессий. Есть комьюнити специализированные, например по фильмам, по играм и другим тематикам. Это такое пространство, где можно общаться, взаимодействовать с другими участниками и принимать непосредственное участие в жизни сообщества, в том числе и создавать своё комьюнити. Естественно, все крупные владельцы таких комьюнити используют Discord как раз для этого.
Что из себя представляет комьюнити. Это в терминологии Дискорда сервер, то есть определённое место, которое объединяет несколько каналов и чатов. Каналы и чаты аналогичны примерно каналам и чатам в Telegram. То есть тут могут быть чаты, публичные, где каждый может писать всё, что угодно, и приватные, только для определённой аудитории. И каналы, где публикуются посты без возможности написать что-то от своего имени. Соответственно можно читать публикации, самому публиковать что-то, просто переписываться с участниками сообщества. Плюс в Дискорде есть тоже видео и голосовые звонки, можно создавать чаты и возможности. Всё это очень гибко настраивается, что позволяет создателям таких комьюнити затачивать их под свои нужды.
Одним из таких комьюнити является как раз сервер Midjorney. Это, по сути, чат-бот, к которому, собственно, будем давать команды на то, чтобы сгенерировать изображение.
Итак, для того, чтобы погрузиться в эту историю, заходи на сайт Дискорда (https://discord.com/) скачивай себе приложение (либо можно остаться в браузере) и зарегистрируй там себе аккаунт. Для регистрации тебе понадобится почта, придумать себе логин, задать пароль и указать дату рождения. Собственно всё, после регистрации ты сможешь открыть себе мир Дискорда и посмотреть, какие там уже есть комьюнити. Может быть, что-то себе из этого понравится и куда-то ты присоединишься. Кстати, очень сообществ русскоязычных.
А в следующем посте напишу команды, с помощью которых ты сможешь генерировать потрясающие воображение изображения прямиком из будущего, которое уже здесь.
651
Пока мы тут с вами занимались записью в практикум по сайтам, на фоне у меня произошло ещё одно значимое событие. Моё приложение, про разработку которого я писал ранее (можно почитать здесь, тут, там и ещё вот), было опубликовано в сторах: AppStore, Google Play Market и RuStore. Так что теперь можно оценить, на что способны современные конструкторы во всей красе.
Публикация заняла намного больше времени, чем я ожидал и на то было несколько причин. Про них расскажу, пожалуй, в отдельных постах, так как там есть технические детали, которые нужно пояснять. Но, к моему удивлению, Apple оказался намного расторопнее в плане модерации приложения, чем Google. Я удивляюсь, потому что во время публикации предыдущих версий было ровным счётом наоборот.
На этот раз сложности именно с технической точки зрения были со стороны Google, из-за чего пришлось повозиться с настройками Firebase, сертификатами подписи приложения, собирать и перезаливать версии несколько раз подряд.
Тем не менее, приложение Нутриклиника версии 2.0 увидело свет и уже помогает тысячам людей (судя по статистике скачиваний) налаживать своё питание во время болезней и для профилактики.
Напиши в комментариях, что тебе было бы интересно узнать про разработку мобильных приложений. Всем здоровья!
651
На этом всё, продажи в практикум Tilda: Основы закрыты. Поздравляю всех, кто к нам присоединился, с 5 января мы начинаем активно развивать навыки разработки сайтов на конструкторе, которые позволят нам наладить удалённый доход, обрести долгожданную свободу!
Дальше продолжаю публиковать полезный тематический контент. 🙌🏻
651
6️⃣ Осталось 6 часов до конца возможности записаться в практикум.
Это можно сделать по ссылке: 👉 Участвовать в практикуме + нажать на кнопку в закрепе.
¡Ya disponible! Investigación de Telegram 2025 — los principales insights del año 
