4 ключа к написанию современного Python
Если вы хотите писать на Python код, использующий самые новые и мощные возможности языка, вот четыре области, которые стоит изучить.
Недавно на одном из новостных форумов был задан вопрос: "Почему разработка Android так сложна"? Ответ очень очевиден - "Потому что у нее нет четкого руководства". Это хорошо видно по тому, как нас призывают принять Jetpack Compose и все декларативное.
Новейшие возможности связаны с эффектами geewiz, такими как новый общий переход элементов. Это позволяет отображать один и тот же контент в разных композитах. Описание того, как это работает, оставляет желать лучшего. В основном приходится доверять магии под капотом. То же самое можно сказать и о новой анимации ленивого списка, которая позволяет принимать анимацию добавления и удаления элементов из списка.
Compose также распространяется. Compose для TV 1.0.0 уже в бета-версии, а Compose для Wear OS переходит из бета-версии в стабильную. Также вышла версия 1.1 Glance, фреймворка для создания виджетов. Последняя хорошая новость - Compose теперь на 17 % быстрее при начальном рендеринге.
Все это замечательно - мне нравится и восхищает дизайн Jetpack Compose. Он очень продуманный и хорошо использует возможности языка Kotlin. Но нам нужно помнить, что мы создаем пользовательский интерфейс. Существует давняя традиция создания пользовательских интерфейсов с простыми в использовании конструкторами перетаскивания - Swing, XAML, Windows Forms и традиционный пользовательский интерфейс Android на основе XML. Это позволяло легко создавать пользовательский интерфейс, а затем поручать кому-то другому его дорабатывать.
Jetpack Compose, с другой стороны, имеет несколько хороших инструментов для настройки и полировки пользовательского интерфейса, но на горизонте нет дизайнера с перетаскиванием. Такие инструменты, как предварительный просмотр и живые изменения, помогают, но действительно ли вы хотите указывать положение и размер всего в пикселях? Или выстраивать иерархию компонентов путем написания кода? Лично я считаю создание пользовательского интерфейса скучной и нудной задачей, которая становится еще скучнее из-за необходимости задавать его в коде.
Самый безумный пример перехода на декларативность можно найти в подходе compose к менеджеру компоновки с ограничениями. Это была вершина разработки XML UI, и она обещала упростить работу с экранами разных размеров. На практике его было очень сложно реализовать, а без помощи интерактивного графического редактора это было бы еще сложнее. Теперь же мы должны были вручную декларативно кодировать ограничения - практически невыполнимая задача.
Нужен ли нам drag-and-drop редактор для Jetpack Compose? Да, да и да, хотя бы для того, чтобы избежать совета, который я нашел в одном из недавних блогов Android:
"Мы рассказали о захватывающем демонстрационном ролике, показанном на Google I/O 2024, где Gemini преобразовал эскиз пользовательского интерфейса приложения в код Jetpack Compose прямо в Android Studio".
Итак, позвольте мне понять правильно - команда Android не считает, что нам нужен редактор с перетаскиванием, но они считают, что показать рисунок искусственному интеллекту и заставить его сгенерировать код - это желательно? Может быть, я не в курсе, но неужели замена простого надежного инструмента галлюцинирующим и очень дорогим ИИ - это то, к чему мы идем?
Jetpack Compose - это продуманный и эффективный фреймворк пользовательского интерфейса. Ему просто нужен лучший и более подходящий инструментарий, поскольку не все являются экспертами.
Если вы хотите писать на Python код, использующий самые новые и мощные возможности языка, вот четыре области, которые стоит изучить.
Mirascope - это библиотека Python, которая позволяет вам получить доступ к ряду больших языковых моделей, но более простым и питоническим способом.
htmx, похоже, подкрался к нам, программистам, - возможно, потому, что мы программисты. Является ли он следующей большой вещью и может ли он стать убийцей JavaScript?
Продолжаем добавлять языки программирования для Вас.
Впереди много интересного!
Только свежие новости программирования и технологий каждый день.
Комментарии