Единицы
1. Введение в искусственный интеллект в мобильной разработке: роли, границы, аутентификация и безопасность 2. Генерация мобильного кода с помощью искусственного интеллекта: Kotlin, Swift и кроссплатформенная разработка 3. Проектирование интерфейсов и генерация кода пользовательского интерфейса с помощью искусственного интеллекта 4. Искусственный интеллект на устройстве: Core ML, TensorFlow Lite и комплект ML 5. Интеграция Cloud AI и LLM API: чат, потоки и безопасность 6. Генерация тестов с помощью искусственного интеллекта: юнит-тесты, тесты интерфейса и автоматизации 7. Отладка и анализ сбоев с помощью искусственного интеллекта 8. Оптимизация производительности и батареи: быстрые и эффективные приложения с искусственным интеллектом 9. Конфиденциальность, разрешения и безопасное использование 10. Версия для магазина: App Store, Google Play и совместимость с AI. 11. Комплексный проект, ответственное использование искусственного интеллекта и дорожная карта в профессии
Единица 11 / 11

Комплексный проект, ответственное использование искусственного интеллекта и дорожная карта в профессии

Прибыль:

  • Способность разработать комплексную мобильную функцию, поддающуюся проверке на этапах проектирования, кода, интеграции искусственного интеллекта, конфиденциальности, тестирования, отладки, производительности и выпуска.
  • Способность создать основу для ответственного и этического использования искусственного интеллекта с принципами прозрачности, проверки-подотчетности и справедливости-непричинения вреда.
  • Возможность создать устойчивую профессиональную практику, различая области, в которых искусственный интеллект силен и слаб, и оставляя окончательное решение в руках людей.

В этом модуле мы использовали ИИ на каждом этапе мобильной разработки: генерация кода, интерфейс, интеграция ИИ на устройстве и в облаке, тестирование, отладка, производительность, конфиденциальность и доставка в магазин. В этом заключительном разделе мы объединим все эти части в единый сквозной поток, проясним рамки ответственного и этичного использования ИИ и поговорим о том, как превратить эти навыки в устойчивую профессиональную практику. Основная идея не изменилась, но теперь она прочно укоренилась: ИИ — это сила, которая умножает компетентных мобильных разработчиков; это не замена. Это человек, который несет ответственность за качество, безопасность и перспективность продукта для пользователя.

Комплексная функция: объединение частей

Разработка реальной функции от начала до конца с поддержкой ИИ объединяет в цепочку все изученные нами элементы. Пример: функция «Добавить расходы из квитанции». Поток работает следующим образом:

  1. Проектирование (Блок 3). Нарисуйте экран и четыре состояния (загрузка/пустой/ошибка/полный) с помощью ИИ, запросите доступность с самого начала.
  2. Кодекс (Раздел 2). Создавайте камеру, модель данных и ViewModel слой за слоем с помощью MVVM; проверьте каждый слой.
  3. ИИ на устройстве (блок 4). Считайте сумму/дату квитанции с помощью распознавания текста ML Kit; Рассмотрите возможность предварительной обработки и оценки достоверности.
  4. Конфиденциальность (Блок 9). Запросите разрешение камеры с минимальными привилегиями, напишите сценарий отклонения, сохраните данные на устройстве.
  5. Тестирование (Блок 6). Генерировать модульные тесты логики извлечения, тестирование пользовательского интерфейса дисплея; Включите приграничные государства.
  6. Отладка (раздел 7). Пусть ИИ проанализирует сбои с учетом контекста и устранит первопричину.
  7. Производительность (раздел 8). Измерьте расход батареи на обработку камеры и настройте ее с учетом экономии заряда батареи.
  8. Радиовещание (Блок 10). Сообщайте об использовании ИИ прозрачно, правдиво заполняйте форму конфиденциальности и проводите самопроверку.

На каждом этапе ИИ ускоряется, человек проверяет и принимает решение. Этот цикл является ядром модуля.

Совет: не пытайтесь заставить ИИ выполнять сложную функцию одним гигантским запросом. Разбейте его на проверяемые шаги, как указано выше. Тестирование результатов каждого шага и переход к следующему не только безопаснее, но и быстрее; Потому что большую ошибку ловишь не в конце, а на первом шаге.

Ответственное и этичное использование ИИ

Одной только технической компетентности недостаточно; ответственная структура завершает это. Три принципа:

Прозрачность. Пользователь должен знать, что он или она взаимодействует с ИИ. Секретный ИИ — это злоупотребление доверием. Контент, созданный искусственным интеллектом, помечается тегами; Советы ИИ преподносятся как «полезные советы», а не как «жесткая правда».

Проверка и подотчетность. Результаты ИИ — это отправная точка, а не готовый продукт. Вы несете ответственность за каждую опубликованную строку кода, каждый ответ ИИ, каждую транзакцию данных. «ИИ так написал» — это не защита.

Справедливость и непричинение вреда. Модели ИИ могут нести в себе предвзятости из данных, на которых они обучаются. Распознавание лиц может работать хуже для некоторых цветов кожи, а система рекомендаций может исключить группу. Вы несете ответственность за проверку того, что ваш продукт работает справедливо в разных группах пользователей.

Внимание: Любая техника, которую вы изучаете в области ИТ и безопасности, используется только в разрешенных и конструктивных целях. Использование ИИ для создания вредоносного ПО, взлома чужого приложения без разрешения, сбора пользовательских данных без согласия или создания вводящего в заблуждение контента является незаконным и противоречит профессиональной этике. Мера силы раскрывается там, где вы ею не пользуетесь.

Признание ограничений ИИ

Зрелый разработчик знает, где ИИ хорош, а где нет.

ИИ мощный

ИИ слаб

Код пресс-формы, стандартное производство

Продуктовые и архитектурные решения

Тестирование и проект документации

Понимание бизнес-контекста и пользователя

Чтение журнала сбоев, сканирование ошибок

Точный диагноз основной причины (требуется проверка)

Обучение, объяснение концепции

Текущая/неизготовленная информация API

Текст, описание, перевод

Этика, безопасность и окончательное юридическое решение

Усвоение этого различия является ключом к эффективному использованию ИИ и избежанию его ловушек.

три мини-кейса

Случай 1. Сквозная скорость. Один разработчик-одиночка завершил «отключенную» функцию за 4 дня, используя описанную выше 8-шаговую последовательность действий; Без ИИ оценка составила 12 дней. Но поскольку он выверял каждый шаг, публикацию одобрили с первого раза. Скорость была реальной, потому что дисциплина была реальной. Урок: проверка ИИ+ выполняется быстрее, чем проверка ИИ.

Случай 2 — Предвзятость обнаружена. Тестируя функцию прогнозирования пола существительного на основе искусственного интеллекта, команда заметила систематические ошибки в некоторых турецких существительных; модель обучалась в основном на английских данных. Эта функция была изменена: теперь она спрашивает пользователя, а не делает неверные предположения. Урок: задача разработчика — проверить предвзятость обучения модели.

Случай 3. Защита «ИИ так сказал» рухнула. Разработчик опубликовал сгенерированный ИИ код платежа, не проверив его; В одном крайнем случае код выполнял двойные коллекции. Ответственность не снимается, если сказать: «Это написал ИИ»; Как владелец аккаунта, он был разработчиком. Урок: ответственность нельзя делегировать.

Слабая подсказка / Сильная подсказка

Слабая подсказка: «Напишите мне полное приложение для сканирования квитанции».

Мощная подсказка: «Помогите мне разработать функцию «добавление расходов из квитанции» шаг за шагом. Давайте продолжим по порядку: когда я проверю и одобрю каждый шаг, перейду к следующему: 1) Экран + четыре состояния + доступность2) Слои MVVM (камера, модель, ViewModel)3) Чтение суммы/даты из квитанции с помощью ML Kit + оценка доверия4) Разрешение камеры (минимальные привилегии) + поток отклонения5) Модульные и пользовательские тесты Расскажите мне о рисках и моментах, которые мне нужно проверить на каждом из них шаг».

Копируемые шаблоны

Шаблон сквозного планирования: «Я разработаю следующую функцию: [функция]. Разбейте ее на проверяемые этапы: проектирование, код, интеграция искусственного интеллекта, конфиденциальность/разрешения, тестирование, производительность, выпуск. Напишите результаты, риски и критерии проверки для каждого шага. Не делайте одно гигантское производство».

Шаблон аудита этики/предвзятости: «Проверьте следующую функцию ИИ на предмет справедливости и предвзятости: [функция]. Какие группы пользователей могут работать плохо? Как данные обучения влияют на предвзятость? Как мне ее протестировать, как сделать ее более инклюзивной?»

Шаблон проверки подотчетности: «Перечислите вопросы подотчетности, которые я должен задать перед выпуском этого кода/функции, сгенерированного ИИ: понял ли я это, протестировал ли я это, безопасно ли это, прозрачно ли это для пользователя, законно ли это/этично?»

Шаблон непрерывного обучения: «Предложите четырехнедельный практический план по улучшению моих навыков искусственного интеллекта в мобильной разработке: одна тема каждую неделю (код, интеграция, тестирование, выпуск) с целью небольшого проекта и привычки проверки».

Распространенные ошибки

  • Создание сложной функции с помощью одного гигантского запроса. Невозможно проверить; разбить на этапы.
  • Уход от ответственности, говоря «ИИ так написал». Вы несете ответственность за опубликованный код.
  • Не тестировать на предвзятость ИИ. В некоторых группах модель может работать плохо; Испытайте справедливость.
  • Скрытие взаимодействия ИИ от пользователя. Прозрачность – основа доверия.
  • Забыв об ограничениях ИИ. Последнее слово в вопросах архитектуры, этики и текущего API остается за людьми.
  • Чтобы перестать учиться. Инструменты и правила магазина быстро меняются; Будьте постоянно в курсе.

В итоге

Сквозная функция объединяет в цепочку все части модуля: дизайн, код, интеграцию с ИИ, конфиденциальность, тестирование, отладку, производительность и выпуск. На каждом этапе ИИ ускоряется, человек проверяет и принимает решения; Сложная работа разбивается на небольшие проверяемые шаги. Ответственное использование основано на трех принципах: прозрачность, проверка, подотчетность и справедливость, не навреди. ИИ — мощный мультипликатор, но последнее слово в вопросах архитектуры, этики, безопасности и современных знаний остается за людьми. «ИИ сделал это так» — это не защита; Вы несете ответственность за свой продукт и обещания, которые даете пользователю. Благодаря этой дисциплине ИИ сделает вас быстрее, комплекснее и сильнее на протяжении всей вашей карьеры.

Задача приложения

Разбейте мобильную функцию по вашему выбору (например, «подведение итогов с помощью голосовых заметок» или «распознавание продукта по фотографии») на проверяемые этапы с помощью «шаблона комплексного планирования». На самом деле разработайте и утвердите хотя бы один шаг с использованием ИИ. Затем проанализируйте, у каких групп пользователей эта функция может вызвать проблемы с «Шаблоном контроля этики/предвзятости», и ответьте на вопросы, которые вам нужно задать перед выпуском, с помощью «Шаблона контроля ответственности».

контрольный список

  • [ ] Я разбил функцию на поддающиеся проверке маленькие шаги, а не на одно гигантское производство.
  • [ ] Я проверял результаты ИИ на каждом этапе и принял решение
  • [ ] Я представил пользователю взаимодействие с искусственным интеллектом прозрачно.
  • [ ] Я оценил, работает ли функция справедливо/предвзято в разных группах.
  • [ ] Я ответил на вопросы об ответственности перед выпуском (понимание/тестирование/безопасность/этичность)
  • [ ] Я использовал ИИ только в компетентных и конструктивных целях и планирую продолжать обучение

Модульный экзамен

1. Что из перечисленного является наиболее точным позиционированием искусственного интеллекта в мобильной разработке?

  • А) ИИ заменяет разработчика; может быть опубликован напрямую, не читая генерируемый им код
  • Б) Искусственный интеллект работает только при написании текста, к генерации кода он не имеет никакого отношения.
  • В) Искусственный интеллект – помощник и ускоритель; Ответственность за решения в области архитектуры, безопасности и телевещания лежит на людях ✔
  • Г) Поскольку искусственный интеллект всегда создает правильный код, дополнительное тестирование и проверка не нужны.

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

2. Что больше всего повышает качество архитектуры создаваемого кода при запросе мобильного кода у искусственного интеллекта?

  • А) Сделайте подсказку как можно короче и скажите: «Напишите мне приложение».
  • Б) Сначала навязываем архитектуру типа MVVM и запрашиваем код небольшими кусочками, слой за слоем ✔
  • В) Создание всей функции в виде одного гигантского файла за одну подсказку.
  • Г) Вообще не указывайте архитектуру и оставьте лучшее решение искусственному интеллекту.

Объяснение: внедрение такой архитектуры, как MVVM, и требование слоя за слоем перед написанием кода непосредственно в ИИ создает тестируемую и поддерживаемую структуру, которая отделяет логику от экрана. Запрос без архитектуры возвращает код, который выводит все на экран.

3. Что чаще всего упускают из виду при создании интерфейса с искусственным интеллектом и что наиболее критично при реальном использовании?

  • А) Проектирование состояний загрузки, пустого состояния и ошибок, а не только полноэкранного режима ✔
  • Б) Создание только наиболее красивого полноэкранного режима, пропуская другие случаи
  • В) Добавление как можно большего количества цветов и анимации на каждый экран.
  • D) Оставлять теги доступности последними и заниматься только внешним видом

Объяснение: Разработчики часто рассматривают только «полное» состояние; тогда как на самом деле пользователь чаще всего сталкивается с состояниями загрузки, пустого состояния и ошибки. Генерация всех четырех состояний (загрузка/пусто/ошибка/полное) — секрет надежного интерфейса.

4. Почему искусственный интеллект на устройстве часто используется по умолчанию для функции обработки конфиденциальных личных данных (например, измерения состояния здоровья)?

  • А) Модели на устройстве всегда более точны, чем облачные.
  • Б) Обработка на устройстве никогда не требует затрат на батарею или процессор.
  • C) Обработка на устройстве не ограничена по размеру модели.
  • Г) Поскольку данные не покидают телефон, это дает большое преимущество с точки зрения конфиденциальности и доверия пользователей ✔

Объяснение: Обработка на устройстве не удаляет данные с телефона; Это серьезное преимущество с точки зрения соблюдения конфиденциальности и доверия пользователей, плюс оно работает в автономном режиме и мгновенно. Его ограничением является мощность устройства и размер модели.

5. Какая наиболее распространенная «тихая» ошибка, которая приводит к бессмысленным результатам и не выдает сообщения об ошибке при интеграции модели на устройстве?

  • А) Неправильное написание имени файла модели
  • Б) Низкое разрешение значка приложения
  • C) Неправильная предварительная обработка входных данных (размер/нормализация) ✔
  • D) Темная тема экрана.

Объяснение: Неправильное выполнение предварительной обработки входных данных приведет к совершенно неверным результатам без возникновения ошибок. Значения предварительной обработки следует проверять из документации модели.

6. Какое правило является наиболее важным с точки зрения безопасности при интеграции облачного LLM в мобильное приложение?

  • А) Ключ API должен храниться только на сервере, а не на клиенте; запросы должны проходить через прокси ✔
  • Б) API-ключ для удобства должен быть встроен непосредственно в код приложения.
  • В) Ключ API должен быть указан в описании приложения.
  • Г) Ключ API должен храниться в клиенте и скрываться только путем изменения имени.

Раскрытие информации: ключ API никогда не встраивается в код мобильного приложения; потому что приложение можно перепроектировать и извлечь ключ. Правильная архитектура — хранить ключ только на бэкенде и передавать запросы через собственный прокси-сервер.

7. Что больше всего увеличивает скорость, по мнению пользователей, и процент завершения функций в длинных ответах LLM?

  • А) Ждать, пока будет получен весь ответ, и показывать его сразу
  • Б) Показ ответа по словам в том виде, в котором он производится, в потоковом режиме ✔
  • В) Отправка всей истории чата модели при каждом запросе
  • D) Увеличьте инструкцию модели, чтобы максимально расширить ответ.

Описание. Потоковая передача значительно увеличивает воспринимаемую скорость и беглость речи, отображая ответ по мере его появления слово за словом. Вместо ожидания на пустом экране пользователь наблюдает за текстовой формой; Это существенно снижает процент отказов.

8. Какая наиболее распространенная проблема в тестах, созданных искусственным интеллектом, делает тест бесполезным?

  • А) Тесты охватывают слишком много предельных состояний
  • Б) В тестах используются макеты объектов, а не реальные сервисы.
  • В) Тесты выполняются очень быстро
  • Г) Раздувание области пустыми/бесполезными тестами, которые на самом деле не проверяют поведение ✔

Объяснение: Искусственный интеллект иногда создает тесты, которые фактически не проверяют какие-либо выходные данные (например, просто вызываете функцию и записываете пустое утверждение). Они увеличивают размер страхового покрытия, но не обеспечивают реальной защиты; Каждый тест должен быть проверен для проверки значимого поведения.

9. Почему это недостаточное решение, чтобы заглушить сбой, поместив его в пробную версию с предложением искусственного интеллекта?

  • А) try-catch вообще нельзя использовать в мобильных приложениях
  • Б) Сбой прекращается, но поскольку первопричина не устранена, проблема возвращается в другом виде ✔
  • В) Использование try-catch замедляет работу приложения, поэтому запрещено
  • D) Скрытая ошибка автоматически отклоняется магазином.

Объяснение: Замалчивание симптома не устраняет основную причину; Сбой прекращается, но исходная проблема (например, разрыв соединения для передачи данных) возвращается в другой форме (например, потеря данных). Цель профессиональной отладки — устранить первопричину, а не симптом.

10. Какому основному золотому правилу следует следовать при оптимизации производительности?

  • А) Сначала создайте профиль и измерьте реальное узкое место, затем оптимизируйте ✔
  • Б) Угадывать, где медленнее, и концентрироваться там
  • В) Погоня за небольшими выгодами в каждой функции
  • Г) Измерение производительности на эмуляторе и никогда не пробуние реального устройства

Описание: Сначала измерьте, потом оптимизируйте. Реальное узкое место почти всегда находится в другом месте, чем предполагалось; Оптимизация без профилирования — это слепое предположение и зачастую пустая трата усилий.

11. Что является наиболее важной инженерной проблемой для постоянно работающей функции искусственного интеллекта (например, трансляции с камеры в реальном времени)?

  • А) Функция запрашивает как можно больше разрешений.
  • Б) Управление затратами на батарею и процессор при непрерывной обработке с частотой выборки и пакетной обработке ✔
  • В) Запускайте эту функцию только на самых дорогих телефонах.
  • D) Непрерывный рендеринг камеры с максимально возможной частотой кадров.

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

12. Что означает принцип «наименьших привилегий» в управлении разрешениями в мобильной разработке?

  • А) Запрос всех возможных разрешений при запуске, на всякий случай.
  • Б) Сделать приложение неработоспособным, если в разрешении отказано
  • В) Запрос самого широкого разрешения и планирование его сужения позже.
  • Г) Запрос только того разрешения, которое действительно необходимо, при необходимости и в самом узком объеме, со сценарием отказа ✔

Объяснение: Наименьшие привилегии запрашивают только то разрешение, которое действительно необходимо, когда оно необходимо, и в максимально узком объеме. Слишком большое количество разрешений подрывает доверие пользователей, приводит к отказу магазина и увеличивает риск утечки данных.

13. Какие конкретные требования необходимо соблюдать при предъявлении в магазин приложения с искусственным интеллектом?

  • А) Прозрачность контента, контроль контента и раскрытие данных, поступающих в искусственный интеллект, в форме конфиденциальности ✔
  • Б) Сокрытие от пользователя использования искусственного интеллекта
  • В) Маркировка данных, которые фактически не собираются в форме конфиденциальности.
  • D) Многообещающие функции, которых нет в описании

Раскрытие информации: магазины ожидают прозрачности контента (заявление о том, что он производит искусственный интеллект), модерации контента (фильтрация вредоносных выходных данных и уведомлений пользователей) и раскрытия использования данных из приложений, содержащих искусственный интеллект; В чувствительной зоне требуется предупреждение о точности. Заявки, в которых они не указаны, будут отклонены.

14. Почему защита «ИИ так написал» недействительна, когда в опубликованном коде, сгенерированном ИИ, возникает крайняя ошибка?

  • А) Поскольку искусственный интеллект всегда создает безошибочный код, ошибка исходит от пользователя
  • Б) Потому что сохраняет автоматически правильный код, сгенерированный ИИ.
  • В) Потому что ответственность нельзя передать искусственному интеллекту; Разработчик несет ответственность за опубликованный код и данные ✔
  • Г) Потому что код, сгенерированный искусственным интеллектом, никогда не публикуется вживую.

Описание: Результаты ИИ — это отправная точка, а не готовый продукт. Именно разработчик несет ответственность за каждую опубликованную строку, все обработанные данные и каждое данное обещание; ответственность не может быть делегирована ИИ, поэтому перед публикацией результаты должны быть поняты и протестированы.