LibCode
Kotlin: Переменные, типы данных и вывод на экран
В этом уроке разберём основы работы с данными: как хранить информацию, какие типы существуют и как показывать текст прямо в интерфейсе приложения.
В Kotlin две ключевые конструкции для объявления переменных:
Пример в коде (
Когда что использовать
Переменные: "val" vs "var"
В Kotlin две ключевые конструкции для объявления переменных:
val— неизменяемая переменная (аналог константы). После присвоения значения его нельзя поменять.var— изменяемая переменная. Значение можно перезаписывать.
Пример в коде (
MainActivity.kt):
ВыделитьKotlin
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val greeting = "Привет!" // val — нельзя изменить
var counter = 0 // var — можно менять
counter = counter + 1 // работает
// greeting = "Пока!" // ошибка: нельзя перезаписать val
}
Когда что использовать
val— для данных, которые не должны меняться (названия, настройки).var— для счётчиков, динамических значений.
Основные типы данных
String: (Пример:"Текст") С
- Жалоба
Kotlin: Введение
Kotlin — это современный статически типизированный язык программирования, работающий на платформе JVM (Java Virtual Machine). Разработан компанией JetBrains и официально представлен в 2011 году. В 2017 году Google объявил Kotlin приоритетным языком для разработки под Android.
Шаг 1. Установите Android Studio:
Ключевые преимущества
- Совместимость с Java: можно использовать существующие Java-библиотеки.
- Краткость кода: меньше шаблонного кода по сравнению с Java.
- Безопасность: встроенная защита от
NullPointerException. - Функциональные возможности: лямбды, расширения, корутины.
- Мультиплатформенность: поддержка Android, серверных приложений, фронтенда (через Kotlin/JS).
Установка среды разработки
Шаг 1. Установите Android Studio:
- Скачайте установочный файл с официального сайта: https://developer.android.com/studio (Программы для разработки Android-приложений).
- Запустите установщик и следуйте инструкциям.
- При первом запуске выберите:
- "Do not import settings → OK";
- примите лицензионные соглашения;
- дождитесь загрузки компонентов (SDK,
Программы для разработки Android-приложений
Ссылки на необходимые программы для разработки Android-приложений:
Необходим для работы Android Studio, так как она основана на Java. Можно использовать JDK от Oracle: https://www.oracle.c ... gies/downloads/.
Официальная интегрированная среда разработки (IDE) от Google. Скачать можно с официального сайта для разработчиков Android: https://developer.android.com/....
Java Development Kit (JDK)
Необходим для работы Android Studio, так как она основана на Java. Можно использовать JDK от Oracle: https://www.oracle.c ... gies/downloads/.
Android Studio
Официальная интегрированная среда разработки (IDE) от Google. Скачать можно с официального сайта для разработчиков Android: https://developer.android.com/....
JavaScript: Что такое javascript:void(0)?
javascript:void(0) — это синтаксическая конструкция, которую традиционно использовали в атрибуте href HTML‑ссылок для предотвращения перехода по умолчанию.Пример:
ВыделитьHTML
<a href="javascript:void(0)" onclick="doSomething()">Кликни меня</a>При клике браузер выполняет JavaScript‑код, но
void(0) возвращает undefined, что принудительно отменяет навигацию (переход на другую страницу).Как это работает на практике
- Браузер видит
href="javascript:..."и интерпретирует содержимое как JS‑код. void(0)вычисляется вundefined.- Поскольку возвращаемое значение не является валидным URL, переход блокируется.
Почему этот подход считается устаревшим
Несмотря на работоспособность,
javascript:void(0) имеет критические недостатки:Проблемы с доступностью (a11y)
- Скринридеры озвучивают
javascript:void(0)как текст ссылки, создавая путаницу. - Клавиатурная навигация (Tab) работает некорректно.
- Нарушается принцип семантической разметки.
SEO‑риски
- Поисковые роботы игнорируют ссылки с
javascript:. - Может расцениватьс
PHP: Как определить поворот изображения с помощью exif_read_data()
Что такое EXIF и зачем он нужен
EXIF (Exchangeable Image File Format) — это стандарт, позволяющий добавлять к изображениям и другим файлам метаданные: информацию о камере, настройках съёмки, дате, геолокации и ориентации снимка.
Эти данные записываются камерой или смартфоном при создании фото и могут быть прочитаны специальными инструментами, в том числе PHP‑функцией
exif_read_data().Как EXIF хранит информацию о повороте
Ключевой параметр для определения поворота — поле Orientation (ориентация). Оно принимает значения от
1 до 8, каждое из которых описывает определённое положение камеры при съёмке:
1: нормальное положение (0°);3: повёрнуто на 180°;6: повёрнуто на 90° по часовой стрелке;8: повёрнуто на 90° против часовой стрелки.
Остальные значения (2, 4, 5, 7) описывают зеркальные повороты, которые встречаются реже.
Практический пример на PHP
Шаг 1. Чтение EXIF‑данных
Используйте функцию
exif_read_data(), чтобы получить метаданные изображения:
ВыделитьPHP
$exifData =