- Определение CI (Continuous Integration):
- Что такое непрерывная интеграция.
- Цель: автоматизация сборки, тестирования и линтинга для уменьшения влияния человеческого фактора.
- Определение CD (Continuous Deployment/Delivery):
- Различие между Continuous Deployment и Continuous Delivery.
- Особенности мобильной разработки: обязательное ревью в магазинах приложений.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import okhttp3.* | |
import okhttp3.MediaType.Companion.toMediaTypeOrNull | |
import java.io.IOException | |
// Inner interceptor that simulates a failure | |
class FailingInterceptor : Interceptor { | |
override fun intercept(chain: Interceptor.Chain): Response { | |
throw IOException("Simulated network error from FailingInterceptor") | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
local spaces = require("hs.spaces") | |
-- (Optional) helper to read dock position | |
local function dockOrientation() | |
local out = hs.execute("defaults read com.apple.dock orientation") | |
return out:match("^%s*(%S+)") | |
end | |
-- get the main window of an app (wait until it's ready) | |
local function getMainWindow(app) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@JvmInline | |
value class ImageId(val id: String) | |
@Preview | |
@Composable | |
fun Test() { | |
val images = emptyList<ImageId>() | |
var animatingImageId by remember { | |
mutableStateOf<ImageId?>(null) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#set($capitalizedFilename = $NAME.substring(0,1).toUpperCase() + $NAME.substring(1)) | |
#set($lowercaseFilename = $NAME.substring(0,1).toLowerCase() + $NAME.substring(1)) | |
#if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME}#end | |
import com.arkivanov.essenty.lifecycle.Lifecycle | |
import com.arkivanov.essenty.lifecycle.doOnDestroy | |
import com.arkivanov.mvikotlin.core.binder.BinderLifecycleMode | |
import com.arkivanov.mvikotlin.core.store.Reducer | |
import com.arkivanov.mvikotlin.core.store.SimpleBootstrapper |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
override fun onDestroy() { | |
super.onDestroy() | |
if (needCloseScope()) { | |
// Destroy this fragment with scope | |
Timber.d("Destroy UI scope: $fragmentScopeName") | |
Toothpick.closeScope(scope.name) | |
} | |
} | |
// This is android, baby! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
* Copyright 2019 Sergey Chelombitko | |
* | |
* Licensed under the Apache License, Version 2.0 (the "License"); | |
* you may not use this file except in compliance with the License. | |
* You may obtain a copy of the License at | |
* | |
* http://www.apache.org/licenses/LICENSE-2.0 | |
* | |
* Unless required by applicable law or agreed to in writing, software |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?xml version="1.0" encoding="utf-8"?> | |
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" | |
xmlns:app="http://schemas.android.com/apk/res-auto" | |
android:layout_width="match_parent" | |
android:layout_height="match_parent"> | |
<ImageView | |
android:id="@+id/articleImage" | |
android:layout_width="0dp" | |
android:layout_height="0dp" |
NewerOlder