и посмотреть медиа
Тестировщик | Вопросы собесов
и посмотреть медиа
Вопросы собеседований для тестировщиков.
Вопросы собеседований для тестировщиков.
AI бот для озвучки текста и клонирования голоса в Telegram. Создавай аудио с помощью нейросети быстро и просто.
Вопросы по тестированию: ISTQB, Selenium, API. С примерами.
🤔 Какие знаешь инструменты для сниффера трафика? - Charles Proxy - Fiddler - Wireshark - mitmproxy - Burp Suite - Proxyman (для macOS) Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
Открыть канал и посмотреть медиа🤔 Расскажи про гибридные приложения Гибридные приложения (Hybrid Apps) – это мобильные приложения, которые совмещают веб-технологии (HTML, CSS, JavaScript) с нативными компонентами платформы (iOS, Android). 🚩Как работают гибридные приложения? Основа – это веб-приложение, работающее внутри WebView (встроенного браузера). Обёртка – это нативный контейнер, который даёт доступ к функциям устройства (камера, GPS, файлы). Код один для всех платформ, но используется нативный API через плагины. 🚩Плюсы ➕Кроссплатформенность один код работает и на iOS, и на Android. ➕Быстрая разработка не нужно писать два отдельных приложения. ➕Дешевле в разработке одна команда вместо двух. ➕Доступ к устройству можно использовать камеру, push-уведомления, GPS через плагины. ➕Обновления без магазина контент можно обновлять через сервер, без отправки в App Store/Google Play. 🚩Минусы ➖Производительность ниже, чем у нативных приложений WebView медленнее, чем нативный код. ➖Ограниченный доступ к API устройства некоторые функции доступны только в нативных приложениях. ➖Зависимость от WebView если браузер работает нестабильно, приложение тоже будет лагать. ➖Проблемы с UI/UX гибридные приложения могут выглядеть "неестественно" на iOS и Android. 🚩Популярные технологии для гибридных приложений Apache Cordova (PhoneGap) – позволяет запускать веб-приложения в WebView и использовать плагины для доступа к устройству. Ionic – фреймворк на основе Angular + Cordova для создания гибридных приложений. React Native – гибридный, но ближе к нативным приложениям, использует JavaScript и рендерит UI через нативные компоненты. Flutter (Dart) – кроссплатформенный фреймворк, компилирует код в нативный, быстрее классических гибридных решений. 🚩Пример структуры гибридного приложения (Ionic + Angular) Гибридное приложение Сделать фото import { Camera } from '@capacitor/camera'; async takePhoto() { const photo = await Camera.getPhoto({ quality: 90, allowEditing: true, resultType: 'Base64' }); console.log(photo); } Ставь 👍 и забирай 📚 Базу знаний
Открыть канал и посмотреть медиа🤔 Как расшифровывается CRUD? CRUD — это базовые действия с данными: - C — Create (создание) - R — Read (чтение) - U — Update (обновление) - D — Delete (удаление) Эти операции лежат в основе большинства API, СУБД и административных интерфейсов. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
Открыть канал и посмотреть медиа🤔 Какие используются языки для программирования нативного приложения на android? Для нативной разработки Android-приложений используются языки, которые поддерживает Android SDK и позволяют взаимодействовать с системой напрямую. 🚩Kotlin (рекомендуемый Google) Основной язык для Android с 2017 года Простая и лаконичная запись кода Безопасность от NullPointerException Отличная совместимость с Java Поддержка корутин (coroutines) для многопоточности class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) findViewById(R.id.button).setOnClickListener { Toast.makeText(this, "Привет, Android!", Toast.LENGTH_SHORT).show() } } } 🚩Java (классический вариант) Язык, на котором Android разрабатывался с самого начала (2008 г.) Большое количество документации и библиотек Проверенная временем экосистема Работает на JVM и поддерживается Android Runtime (ART) Код более громоздкий по сравнению с Kotlin public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button button = findViewById(R.id.button); button.setOnClickListener(v -> Toast.makeText(this, "Привет, Android!", Toast.LENGTH_SHORT).show() ); } } 🚩C++ (для производительности) Используется в Android NDK (Native Development Kit) Высокая производительность (используется в играх, рендеринге, обработке данных) Доступ к низкоуровневым API Android Позволяет писать кроссплатформенный код Более сложная разработка, чем на Kotlin/Java #include extern "C" JNIEXPORT jstring JNICALL Java_com_example_MainActivity_stringFromJNI(JNIEnv* env, jobject obj) { return env->NewStringUTF("Привет из C++!"); } 🚩Dart (с Flutter) Используется в Flutter, но компилируется в нативный код Android Поддержка Google Одна кодовая база для Android и iOS Высокая скорость работы благодаря Dart VM Не нативный язык Android, но очень популярен import 'package:flutter/material.dart'; void main() => runApp(MyApp()); class MyApp extends StatelessWidget { @override Widget build(BuildContext context) { return MaterialApp( home: Scaffold( body: Center(child: Text("Привет, Android!")), ), ); } } Ставь 👍 и забирай 📚 Базу знаний
Открыть канал и посмотреть медиа🤔 Что значит структурированная база данных? Это база данных с чёткой схемой хранения данных: таблицы, поля, типы данных, связи между таблицами. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
Открыть канал и посмотреть медиа🤔 Что возвращает метод find index? Метод findIndex() используется для поиска индекса первого элемента массива, который удовлетворяет заданному условию. array.findIndex(callback(element, index, array)) 🚩Примеры использования Поиск первого чётного числа const numbers = [3, 7, 10, 15, 20]; const index = numbers.findIndex(num => num % 2 === 0); console.log(index); // 2 (10 - первое чётное число) Поиск объекта в массиве const users = [ { id: 1, name: "Анна" }, { id: 2, name: "Пётр" }, { id: 3, name: "Иван" } ]; const index = users.findIndex(user => user.name === "Пётр"); console.log(index); // 1 Если элемент не найден (-1) const arr = [5, 10, 15]; const index = arr.findIndex(num => num > 20); console.log(index); // -1 (нет чисел больше 20) Ставь 👍 и забирай 📚 Базу знаний
Открыть канал и посмотреть медиа🤔 Расскажи про другие базы данных, кроме SQL? - NoSQL: MongoDB, Cassandra, Redis; - Документо-ориентированные; - Ключ-значение; - Графовые (Neo4j). Они подходят для масштабируемых, распределённых систем, где не нужна строгая схема. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
Открыть канал и посмотреть медиа🤔 В чем разница между orElse(), orElseGet()? Оба метода используются с Optional для обработки значений по умолчанию, если Optional пуст (Optional.empty()). orElse() – всегда вычисляет значение public T orElse(T other) Всегда выполняет выражение в orElse(), даже если Optional не пуст. Подходит, если значение по умолчанию простое и быстро вычисляется. Optional opt = Optional.of("Hello"); String result = opt.orElse(getDefault()); // `getDefault()` ВЫЗОВЕТСЯ всегда! System.out.println(result); // "Hello" public static String getDefault() { System.out.println("Вызываем getDefault()"); return "Default"; } Вывод в консоль Вызываем getDefault() Hello orElseGet() – ленивое вычисление public T orElseGet(Supplier
Открыть канал и посмотреть медиа🤔 Как в одной результирующей таблице получить среднюю зарплату работников? Через SQL-запрос с агрегатной функцией: - Используется SELECT AVG(salary) из нужной таблицы. Можно сгруппировать, например, по отделам (GROUP BY), чтобы увидеть среднюю зарплату в каждом. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
Открыть канал и посмотреть медиаТолько зарегистрированные пользователи могут делиться своим мнением.
Станьте первым, кто поделится своим впечатлением об этом ресурсе!