Корутинный проект без легаси
Тех лид: в нашем проекте никакого легаси, мы давно всё переписали на корутины Тем временем корутины в нашем проекте: suspend fun <Params, Progress, Result> asyncTask( vararg params: Params, block: AsyncTask<Params, Progress, Unit>. (List<Params>) -> Result ): Result = suspendCancellableCoroutine<Result> { cont: CancellableContinuation<Result> -> val asyncTask = object : AsyncTask<Params, Progress, Unit>() { override fun doInBackground(vararg params: Params) { val result: Result = block(params.toList()) cont.resume(result) } } asyncTask.execute(*params) cont.invokeOnCancellation { asyncTask.cancel(mayInterruptIfRunning: true) } }
Текст шутит о техлиде, который утверждает, что проект полностью переписан на современные корутины, тогда как на деле внутри используется старый многословный AsyncTask с ручной обработкой отмены. Мем подходит как реакция на заявления о «современном» коде, который на самом деле лишь обёртка над легаси. EN: The meme jokes about a tech lead claiming that the project has been completely rewritten using modern coroutines, while the code actually contains a long-winded legacy AsyncTask with manual cancellation handling. It is used as a reaction to claims that code is modern when it is really just a wrapper around legacy code.
- @right_wing_dev_squads / 2109 2021-07-09
- Type
- image
- Size
- 800×467 · 68.1 KiB
- Mood
- саркастичный, ироничный
- Language
- ru
- Added