SlideShare a Scribd company logo
Laravel
Hyperf
—
(Shengyou Fan)
PHP Day #51
2019/12/17
—
• Developer Advocate
• Backend Developer
• Open Source Community Organizer
TEAM
Laravel
—
</>
…
—
https://www.techempower.com/benchmarks/
—
https://github.com/kenjis/php-framework-benchmark
以 Laravel 經驗開發 Hyperf 應用
PHP
—
https://www.slideshare.net/chtalbert/the-integration-of-laravel-with-swoole
https://www.youtube.com/watch?v=wTrUOWuJBl0
Laravel
—
https://www.slideshare.net/chtalbert/the-integration-of-laravel-with-swoole
https://www.youtube.com/watch?v=wTrUOWuJBl0
Request
—
count(get_included_files());
331
—
—
以 Laravel 經驗開發 Hyperf 應用
C
—
Swoole
—
https://www.swoole.com/
Hyperf
—
https://hyperf.io/
Hyperf
JSON
—
HyperfLaravel
Hyperf
—
HyperfLaravel
QPS
…
—
60~1200
—
—
Todo
MVC
—
PHP Composer Extension
• Swoole >= 4.4

• OpenSSL

• JSON

• PDO
• PHP >= 7.2
—
Vagrant Docker
Homestead• macOS: Homebrew

• Windows: WSL

• Linux: apt
hyperf/hyperf:7.2-alpine-cli
—
// hyperf
$ composer create-project hyperf/hyperf-skeleton
// laravel
$ composer create-project laravel/laravel 
--prefer-dist
• composer
• package
•
Route
—
// hyperf
Router::get('...', function () {
return '...';
});
Router::get('...', [Controller::class, '...']);
// laravel
Route::get('...', function () {
return '...';
});
Route::get('...', [Controller::class, '...']);
•
• Class
• Laravel
CLI Tool
—
// hyperf
$ php bin/hyperf.php command [options] [arguments]
// laravel
$ php artisan command [options] [arguments]
• Symfony Console
• Command
•
• 100%
Controller
—
// hyperf
$ php bin/hyperf.php gen:controller TaskController
declare(strict_types=1);
class TaskController extends AbstractController
{
public function index()
{
// ...
}
}
// laravel
$ php artisan make:controller TaskController
class TaskController extends Controller
{
public function index()
{
// ...
}
}
•
• PHP 7
View Packages
—
// view component
$ composer require hyperf/view
// blade engine
$ composer require duncan3dc/blade
// task component
$ composer require hyperf/task
Setup
View Component
—
// config/autoload/view.php
return [
'engine' => BladeEngine::class,
'mode' => Mode::TASK,
'config' => [
'view_path' => BASE_PATH.'/storage/view/',
'cache_path' => BASE_PATH.'/runtime/view/',
],
];
Setup
Task Component
—
// config/autoload/server.php
return [
// ...
'settings' => [
// ...
'task_worker_num' => 8,
'task_enable_coroutine' => false,
],
'callbacks' => [
SwooleEvent::ON_TASK => [
TaskCallback::class, 'onTask'
],
SwooleEvent::ON_FINISH => [
FinishCallback::class, 'onFinish'
],
],
];
Serve Assets
—
// config/autoload/server.php
return [
// ...
'settings' => [
// ...
'document_root' => BASE_PATH.'/public',
'static_handler_locations' => ['/'],
'enable_static_handler' => true,
],
];• Laravel assets
Views
—
// app/Controller/*Controller.php
public function index(RenderInterface $render)
{
// ...
return $render->render('...', []);
}
• Blade
•
• Task
Migration
—
// hyperf
$ php bin/hyperf.php gen:migration migration_name
// laravel
$ php artisan make:migration migration_name
class Create...Table extends Migration
{
public function up(): void
{
Schema::create('.', function (Blueprint $table) {
$table->bigIncrements('id');
// ...
$table->timestamps();
});
}
public function down(): void
{
Schema::dropIfExists('...');
}
}
•
•
Model
—
// hyperf
$ php bin/hyperf.php gen:model Name
// laravel
$ php artisan make:model Name
class Task extends Model
{
protected $table = '...';
protected $fillable = [...];
protected $casts = [...];
}
• Eloquent
•
Seeder
—
// hyperf
$ php bin/hyperf.php gen:seeder TableSeeder
$ php bin/hyperf.php db:seed
// laravel
$ php artisan make:seeder TableSeeder
$ php artisan db:seed
class TableSeeder extends Seeder
{
public function run()
{
// ...
}
}
•
• DatabaseSeeder
•
•
Request & Response
—
// hyperf
public function store(
RequestInterface $request,
ResponseInterface $response
)
{
return $response->redirect('...');
return $response->json([
...
]);
}
// laravel
public function index(Request $request)
{
return redirect('...');
return response()->json([
...
]);
}
•
•
CRUD
—
// read
Model::all();
// create
Model::create([
...
]);
// update
$task = Model::find($id);
$task->update([
...
]);
// delete
$task = Model::find($id);
$task->delete();
•
—
• PHP
• Laravel
• Swoole Hyperf
• Hyperf
• Laravel Hyperf
—
• PHP
• Swoole
• Hyperf
• Hyperf
—
SwooleHyperf
Hyperf Hyperf
—
https://github.com/shengyou/hyperf-mvc-introduction
(Shengyou)
shengyou.fan@jetbrains.com
Q&A
—
Ad

Recommended

TripleO Deep Dive
TripleO Deep Dive
Takashi Kajinami
 
LISA2019 Linux Systems Performance
LISA2019 Linux Systems Performance
Brendan Gregg
 
SQLite の暗号化
SQLite の暗号化
Akihiro Matsuura
 
Ceph Day Beijing - Ceph All-Flash Array Design Based on NUMA Architecture
Ceph Day Beijing - Ceph All-Flash Array Design Based on NUMA Architecture
Danielle Womboldt
 
Ceph scale testing with 10 Billion Objects
Ceph scale testing with 10 Billion Objects
Karan Singh
 
Apache Bigtopによるオープンなビッグデータ処理基盤の構築(オープンデベロッパーズカンファレンス 2021 Online 発表資料)
Apache Bigtopによるオープンなビッグデータ処理基盤の構築(オープンデベロッパーズカンファレンス 2021 Online 発表資料)
NTT DATA Technology & Innovation
 
PostgreSQL High Availability in a Containerized World
PostgreSQL High Availability in a Containerized World
Jignesh Shah
 
仮想化環境におけるパケットフォワーディング
仮想化環境におけるパケットフォワーディング
Takuya ASADA
 
Achieving the ultimate performance with KVM
Achieving the ultimate performance with KVM
ShapeBlue
 
高負荷に耐えうるWeb application serverの作り方
高負荷に耐えうるWeb application serverの作り方
yuta-ishiyama
 
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
Yoshio Hanawa
 
HSA System Architecture Overview (2014-10-31)
HSA System Architecture Overview (2014-10-31)
Jay Wang
 
[OpenInfra Days Korea 2018] Day 1 - T4-7: "Ceph 스토리지, PaaS로 서비스 운영하기"
[OpenInfra Days Korea 2018] Day 1 - T4-7: "Ceph 스토리지, PaaS로 서비스 운영하기"
OpenStack Korea Community
 
[pgday.Seoul 2022] POSTGRES 테스트코드로 기여하기 - 이동욱
[pgday.Seoul 2022] POSTGRES 테스트코드로 기여하기 - 이동욱
PgDay.Seoul
 
NGINX High-performance Caching
NGINX High-performance Caching
NGINX, Inc.
 
이벤트 기반 분산 시스템을 향한 여정
이벤트 기반 분산 시스템을 향한 여정
Arawn Park
 
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요
Jo Hoon
 
Microservices at Mercari
Microservices at Mercari
Google Cloud Platform - Japan
 
Zedroid - Android (5.0 and later) on Zedboard
Zedroid - Android (5.0 and later) on Zedboard
Industrial Technology Research Institute (ITRI)(工業技術研究院, 工研院)
 
traitを使って楽したい話
traitを使って楽したい話
infinite_loop
 
Bash production guide
Bash production guide
Adrien Mahieux
 
nexus helm 설치, docker/helm repo 설정과 예제
nexus helm 설치, docker/helm repo 설정과 예제
choi sungwook
 
HA Deployment Architecture with HAProxy and Keepalived
HA Deployment Architecture with HAProxy and Keepalived
Ganapathi Kandaswamy
 
Ansible ではじめる ネットワーク自動化(Ansible 2.9版)
Ansible ではじめる ネットワーク自動化(Ansible 2.9版)
akira6592
 
Building ClickHouse and Making Your First Contribution: A Tutorial_06.10.2021
Building ClickHouse and Making Your First Contribution: A Tutorial_06.10.2021
Altinity Ltd
 
VMworld 2013: ESXi Native Networking Driver Model - Delivering on Simplicity ...
VMworld 2013: ESXi Native Networking Driver Model - Delivering on Simplicity ...
VMworld
 
ネットワークOS野郎 ~ インフラ野郎Night 20160414
ネットワークOS野郎 ~ インフラ野郎Night 20160414
Kentaro Ebisawa
 
まずやっとくPostgreSQLチューニング
まずやっとくPostgreSQLチューニング
Kosuke Kida
 
Build your own RESTful API with Laravel
Build your own RESTful API with Laravel
Francisco Carvalho
 
Getting to know Laravel 5
Getting to know Laravel 5
Bukhori Aqid
 

More Related Content

What's hot (20)

Achieving the ultimate performance with KVM
Achieving the ultimate performance with KVM
ShapeBlue
 
高負荷に耐えうるWeb application serverの作り方
高負荷に耐えうるWeb application serverの作り方
yuta-ishiyama
 
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
Yoshio Hanawa
 
HSA System Architecture Overview (2014-10-31)
HSA System Architecture Overview (2014-10-31)
Jay Wang
 
[OpenInfra Days Korea 2018] Day 1 - T4-7: "Ceph 스토리지, PaaS로 서비스 운영하기"
[OpenInfra Days Korea 2018] Day 1 - T4-7: "Ceph 스토리지, PaaS로 서비스 운영하기"
OpenStack Korea Community
 
[pgday.Seoul 2022] POSTGRES 테스트코드로 기여하기 - 이동욱
[pgday.Seoul 2022] POSTGRES 테스트코드로 기여하기 - 이동욱
PgDay.Seoul
 
NGINX High-performance Caching
NGINX High-performance Caching
NGINX, Inc.
 
이벤트 기반 분산 시스템을 향한 여정
이벤트 기반 분산 시스템을 향한 여정
Arawn Park
 
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요
Jo Hoon
 
Microservices at Mercari
Microservices at Mercari
Google Cloud Platform - Japan
 
Zedroid - Android (5.0 and later) on Zedboard
Zedroid - Android (5.0 and later) on Zedboard
Industrial Technology Research Institute (ITRI)(工業技術研究院, 工研院)
 
traitを使って楽したい話
traitを使って楽したい話
infinite_loop
 
Bash production guide
Bash production guide
Adrien Mahieux
 
nexus helm 설치, docker/helm repo 설정과 예제
nexus helm 설치, docker/helm repo 설정과 예제
choi sungwook
 
HA Deployment Architecture with HAProxy and Keepalived
HA Deployment Architecture with HAProxy and Keepalived
Ganapathi Kandaswamy
 
Ansible ではじめる ネットワーク自動化(Ansible 2.9版)
Ansible ではじめる ネットワーク自動化(Ansible 2.9版)
akira6592
 
Building ClickHouse and Making Your First Contribution: A Tutorial_06.10.2021
Building ClickHouse and Making Your First Contribution: A Tutorial_06.10.2021
Altinity Ltd
 
VMworld 2013: ESXi Native Networking Driver Model - Delivering on Simplicity ...
VMworld 2013: ESXi Native Networking Driver Model - Delivering on Simplicity ...
VMworld
 
ネットワークOS野郎 ~ インフラ野郎Night 20160414
ネットワークOS野郎 ~ インフラ野郎Night 20160414
Kentaro Ebisawa
 
まずやっとくPostgreSQLチューニング
まずやっとくPostgreSQLチューニング
Kosuke Kida
 
Achieving the ultimate performance with KVM
Achieving the ultimate performance with KVM
ShapeBlue
 
高負荷に耐えうるWeb application serverの作り方
高負荷に耐えうるWeb application serverの作り方
yuta-ishiyama
 
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
Yoshio Hanawa
 
HSA System Architecture Overview (2014-10-31)
HSA System Architecture Overview (2014-10-31)
Jay Wang
 
[OpenInfra Days Korea 2018] Day 1 - T4-7: "Ceph 스토리지, PaaS로 서비스 운영하기"
[OpenInfra Days Korea 2018] Day 1 - T4-7: "Ceph 스토리지, PaaS로 서비스 운영하기"
OpenStack Korea Community
 
[pgday.Seoul 2022] POSTGRES 테스트코드로 기여하기 - 이동욱
[pgday.Seoul 2022] POSTGRES 테스트코드로 기여하기 - 이동욱
PgDay.Seoul
 
NGINX High-performance Caching
NGINX High-performance Caching
NGINX, Inc.
 
이벤트 기반 분산 시스템을 향한 여정
이벤트 기반 분산 시스템을 향한 여정
Arawn Park
 
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요
Jo Hoon
 
traitを使って楽したい話
traitを使って楽したい話
infinite_loop
 
nexus helm 설치, docker/helm repo 설정과 예제
nexus helm 설치, docker/helm repo 설정과 예제
choi sungwook
 
HA Deployment Architecture with HAProxy and Keepalived
HA Deployment Architecture with HAProxy and Keepalived
Ganapathi Kandaswamy
 
Ansible ではじめる ネットワーク自動化(Ansible 2.9版)
Ansible ではじめる ネットワーク自動化(Ansible 2.9版)
akira6592
 
Building ClickHouse and Making Your First Contribution: A Tutorial_06.10.2021
Building ClickHouse and Making Your First Contribution: A Tutorial_06.10.2021
Altinity Ltd
 
VMworld 2013: ESXi Native Networking Driver Model - Delivering on Simplicity ...
VMworld 2013: ESXi Native Networking Driver Model - Delivering on Simplicity ...
VMworld
 
ネットワークOS野郎 ~ インフラ野郎Night 20160414
ネットワークOS野郎 ~ インフラ野郎Night 20160414
Kentaro Ebisawa
 
まずやっとくPostgreSQLチューニング
まずやっとくPostgreSQLチューニング
Kosuke Kida
 

Similar to 以 Laravel 經驗開發 Hyperf 應用 (20)

Build your own RESTful API with Laravel
Build your own RESTful API with Laravel
Francisco Carvalho
 
Getting to know Laravel 5
Getting to know Laravel 5
Bukhori Aqid
 
Laravel - PHP For artisans
Laravel - PHP For artisans
Francisco Carvalho
 
RESTful API development in Laravel 4 - Christopher Pecoraro
RESTful API development in Laravel 4 - Christopher Pecoraro
Christopher Pecoraro
 
Laravel Level 1 (The Basic)
Laravel Level 1 (The Basic)
Kriangkrai Chaonithi
 
Laravel intake 37 all days
Laravel intake 37 all days
Ahmed Abd El Ftah
 
Laravel
Laravel
Dyuti Islam
 
Introduction to Laravel Framework (5.2)
Introduction to Laravel Framework (5.2)
Viral Solani
 
Laravel5 Introduction and essentials
Laravel5 Introduction and essentials
Pramod Kadam
 
Laravel Tutorial PPT
Laravel Tutorial PPT
Piyush Aggarwal
 
Getting started with laravel
Getting started with laravel
Advance Idea Infotech
 
What's New In Laravel 5
What's New In Laravel 5
Darren Craig
 
What-is-Laravel and introduciton to Laravel
What-is-Laravel and introduciton to Laravel
PraveenHegde20
 
Laravel Introduction
Laravel Introduction
Ahmad Shah Hafizan Hamidin
 
Laravel 4 presentation
Laravel 4 presentation
Abu Saleh Muhammad Shaon
 
MidwestPHP 2016 - Adventures in Laravel 5
MidwestPHP 2016 - Adventures in Laravel 5
Joe Ferguson
 
Building Lithium Apps
Building Lithium Apps
Nate Abele
 
Introduction to Laravel
Introduction to Laravel
Vin Lim
 
Adventures in Laravel 5 SunshinePHP 2016 Tutorial
Adventures in Laravel 5 SunshinePHP 2016 Tutorial
Joe Ferguson
 
PHPCon China 2018 - 好孩子的 PHP 撰碼指南
PHPCon China 2018 - 好孩子的 PHP 撰碼指南
Shengyou Fan
 
Build your own RESTful API with Laravel
Build your own RESTful API with Laravel
Francisco Carvalho
 
Getting to know Laravel 5
Getting to know Laravel 5
Bukhori Aqid
 
RESTful API development in Laravel 4 - Christopher Pecoraro
RESTful API development in Laravel 4 - Christopher Pecoraro
Christopher Pecoraro
 
Introduction to Laravel Framework (5.2)
Introduction to Laravel Framework (5.2)
Viral Solani
 
Laravel5 Introduction and essentials
Laravel5 Introduction and essentials
Pramod Kadam
 
What's New In Laravel 5
What's New In Laravel 5
Darren Craig
 
What-is-Laravel and introduciton to Laravel
What-is-Laravel and introduciton to Laravel
PraveenHegde20
 
MidwestPHP 2016 - Adventures in Laravel 5
MidwestPHP 2016 - Adventures in Laravel 5
Joe Ferguson
 
Building Lithium Apps
Building Lithium Apps
Nate Abele
 
Introduction to Laravel
Introduction to Laravel
Vin Lim
 
Adventures in Laravel 5 SunshinePHP 2016 Tutorial
Adventures in Laravel 5 SunshinePHP 2016 Tutorial
Joe Ferguson
 
PHPCon China 2018 - 好孩子的 PHP 撰碼指南
PHPCon China 2018 - 好孩子的 PHP 撰碼指南
Shengyou Fan
 
Ad

More from Shengyou Fan (20)

[JCConf 2024] Kotlin/Wasm:為 Kotlin 多平台帶來更多可能性
[JCConf 2024] Kotlin/Wasm:為 Kotlin 多平台帶來更多可能性
Shengyou Fan
 
[GDG Kaohsiung DevFest 2023] 以 Compose 及 Kotlin Multiplatform 打造多平台應用程式
[GDG Kaohsiung DevFest 2023] 以 Compose 及 Kotlin Multiplatform 打造多平台應用程式
Shengyou Fan
 
[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...
[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...
Shengyou Fan
 
[Kotlin 讀書會第五梯次] 深入淺出 Kotlin 第一章導讀
[Kotlin 讀書會第五梯次] 深入淺出 Kotlin 第一章導讀
Shengyou Fan
 
[WebConf Taiwan 2023] 一份 Zend Engine 外帶!透過 Micro 讓一次打包、多處運行變得可能
[WebConf Taiwan 2023] 一份 Zend Engine 外帶!透過 Micro 讓一次打包、多處運行變得可能
Shengyou Fan
 
How I make a podcast website using serverless technology in 2023
How I make a podcast website using serverless technology in 2023
Shengyou Fan
 
[Effective Kotlin 讀書會] 第八章 Efficient collection processing 導讀
[Effective Kotlin 讀書會] 第八章 Efficient collection processing 導讀
Shengyou Fan
 
[MOPCON 2022] 以 Kotlin Multiplatform 制霸全平台
[MOPCON 2022] 以 Kotlin Multiplatform 制霸全平台
Shengyou Fan
 
[JCConf 2022] Compose for Desktop - 開發桌面軟體的新選擇
[JCConf 2022] Compose for Desktop - 開發桌面軟體的新選擇
Shengyou Fan
 
Using the Exposed SQL Framework to Manage Your Database
Using the Exposed SQL Framework to Manage Your Database
Shengyou Fan
 
[COSCUP 2022] 讓黑畫面再次偉大 - 用 PHP 寫 CLI 工具
[COSCUP 2022] 讓黑畫面再次偉大 - 用 PHP 寫 CLI 工具
Shengyou Fan
 
[COSCUP 2022] Kotlin Collection 遊樂園
[COSCUP 2022] Kotlin Collection 遊樂園
Shengyou Fan
 
初探 Kotlin Multiplatform
初探 Kotlin Multiplatform
Shengyou Fan
 
簡化 JVM 上雲 - 透過 Azure Spring Cloud 提升開發、發佈及服務監控效率
簡化 JVM 上雲 - 透過 Azure Spring Cloud 提升開發、發佈及服務監控效率
Shengyou Fan
 
[PHP 也有 Day #64] PHP 升級指南
[PHP 也有 Day #64] PHP 升級指南
Shengyou Fan
 
以 Kotlin Multiplatform Mobile (KMM) 開發跨平台行動應用
以 Kotlin Multiplatform Mobile (KMM) 開發跨平台行動應用
Shengyou Fan
 
Composer 經典食譜
Composer 經典食譜
Shengyou Fan
 
老派浪漫:用 Kotlin 寫 Command Line 工具
老派浪漫:用 Kotlin 寫 Command Line 工具
Shengyou Fan
 
[Kotlin Serverless 工作坊] 單元 4 - 實作 RSS Aggregator
[Kotlin Serverless 工作坊] 單元 4 - 實作 RSS Aggregator
Shengyou Fan
 
[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API
[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API
Shengyou Fan
 
[JCConf 2024] Kotlin/Wasm:為 Kotlin 多平台帶來更多可能性
[JCConf 2024] Kotlin/Wasm:為 Kotlin 多平台帶來更多可能性
Shengyou Fan
 
[GDG Kaohsiung DevFest 2023] 以 Compose 及 Kotlin Multiplatform 打造多平台應用程式
[GDG Kaohsiung DevFest 2023] 以 Compose 及 Kotlin Multiplatform 打造多平台應用程式
Shengyou Fan
 
[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...
[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...
Shengyou Fan
 
[Kotlin 讀書會第五梯次] 深入淺出 Kotlin 第一章導讀
[Kotlin 讀書會第五梯次] 深入淺出 Kotlin 第一章導讀
Shengyou Fan
 
[WebConf Taiwan 2023] 一份 Zend Engine 外帶!透過 Micro 讓一次打包、多處運行變得可能
[WebConf Taiwan 2023] 一份 Zend Engine 外帶!透過 Micro 讓一次打包、多處運行變得可能
Shengyou Fan
 
How I make a podcast website using serverless technology in 2023
How I make a podcast website using serverless technology in 2023
Shengyou Fan
 
[Effective Kotlin 讀書會] 第八章 Efficient collection processing 導讀
[Effective Kotlin 讀書會] 第八章 Efficient collection processing 導讀
Shengyou Fan
 
[MOPCON 2022] 以 Kotlin Multiplatform 制霸全平台
[MOPCON 2022] 以 Kotlin Multiplatform 制霸全平台
Shengyou Fan
 
[JCConf 2022] Compose for Desktop - 開發桌面軟體的新選擇
[JCConf 2022] Compose for Desktop - 開發桌面軟體的新選擇
Shengyou Fan
 
Using the Exposed SQL Framework to Manage Your Database
Using the Exposed SQL Framework to Manage Your Database
Shengyou Fan
 
[COSCUP 2022] 讓黑畫面再次偉大 - 用 PHP 寫 CLI 工具
[COSCUP 2022] 讓黑畫面再次偉大 - 用 PHP 寫 CLI 工具
Shengyou Fan
 
[COSCUP 2022] Kotlin Collection 遊樂園
[COSCUP 2022] Kotlin Collection 遊樂園
Shengyou Fan
 
初探 Kotlin Multiplatform
初探 Kotlin Multiplatform
Shengyou Fan
 
簡化 JVM 上雲 - 透過 Azure Spring Cloud 提升開發、發佈及服務監控效率
簡化 JVM 上雲 - 透過 Azure Spring Cloud 提升開發、發佈及服務監控效率
Shengyou Fan
 
[PHP 也有 Day #64] PHP 升級指南
[PHP 也有 Day #64] PHP 升級指南
Shengyou Fan
 
以 Kotlin Multiplatform Mobile (KMM) 開發跨平台行動應用
以 Kotlin Multiplatform Mobile (KMM) 開發跨平台行動應用
Shengyou Fan
 
Composer 經典食譜
Composer 經典食譜
Shengyou Fan
 
老派浪漫:用 Kotlin 寫 Command Line 工具
老派浪漫:用 Kotlin 寫 Command Line 工具
Shengyou Fan
 
[Kotlin Serverless 工作坊] 單元 4 - 實作 RSS Aggregator
[Kotlin Serverless 工作坊] 單元 4 - 實作 RSS Aggregator
Shengyou Fan
 
[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API
[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API
Shengyou Fan
 
Ad

Recently uploaded (20)

The it.com Domains Brand Book for registrars, domain resellers and hosting co...
The it.com Domains Brand Book for registrars, domain resellers and hosting co...
it.com Domains
 
Timeline Infographics Para utilização diária
Timeline Infographics Para utilização diária
meslellis
 
Dark Web Presentation - 1.pdf about internet which will help you to get to kn...
Dark Web Presentation - 1.pdf about internet which will help you to get to kn...
ragnaralpha7199
 
Top Mobile App Development Trends Shaping the Future
Top Mobile App Development Trends Shaping the Future
ChicMic Studios
 
IAREUOUSTPIDWHY$)CHARACTERARERWUEEJJSKWNSND
IAREUOUSTPIDWHY$)CHARACTERARERWUEEJJSKWNSND
notgachabite123
 
最新版美国特拉华大学毕业证(UDel毕业证书)原版定制
最新版美国特拉华大学毕业证(UDel毕业证书)原版定制
taqyea
 
CBUSDAW - Ash Lewis - Reducing LLM Hallucinations
CBUSDAW - Ash Lewis - Reducing LLM Hallucinations
Jason Packer
 
Topic 2 - Cloud Computing Basics,,,.pptx
Topic 2 - Cloud Computing Basics,,,.pptx
oneillp100
 
COMPUTER ETHICS AND CRIME.......................................................
COMPUTER ETHICS AND CRIME.......................................................
FOOLKUMARI
 
inside the internet - understanding the TCP/IP protocol
inside the internet - understanding the TCP/IP protocol
shainweniton02
 
Internet & Protocols : A Blueprint of the Internet System
Internet & Protocols : A Blueprint of the Internet System
cpnabil59
 
NOC Services for maintaining network as MSA.ppt
NOC Services for maintaining network as MSA.ppt
ankurnagar22
 
AWS Basics for non technical people.pptx
AWS Basics for non technical people.pptx
sanjeevkumar123577
 
history of internet in nepal Class-8 (sparsha).pptx
history of internet in nepal Class-8 (sparsha).pptx
SPARSH508080
 
ChatGPT A.I. Powered Chatbot and Popularization.pdf
ChatGPT A.I. Powered Chatbot and Popularization.pdf
StanleySamson1
 
Topic 1 Foundational IT Infrastructure_.pptx
Topic 1 Foundational IT Infrastructure_.pptx
oneillp100
 
3 years of Quarkus in production, what have we learned - Devoxx Polen
3 years of Quarkus in production, what have we learned - Devoxx Polen
Jago de Vreede
 
最新版美国威斯康星大学绿湾分校毕业证(UWGB毕业证书)原版定制
最新版美国威斯康星大学绿湾分校毕业证(UWGB毕业证书)原版定制
Taqyea
 
Make DDoS expensive for the threat actors
Make DDoS expensive for the threat actors
APNIC
 
Lecture 3.1 Analysing the Global Business Environment .pptx
Lecture 3.1 Analysing the Global Business Environment .pptx
shofalbsb
 
The it.com Domains Brand Book for registrars, domain resellers and hosting co...
The it.com Domains Brand Book for registrars, domain resellers and hosting co...
it.com Domains
 
Timeline Infographics Para utilização diária
Timeline Infographics Para utilização diária
meslellis
 
Dark Web Presentation - 1.pdf about internet which will help you to get to kn...
Dark Web Presentation - 1.pdf about internet which will help you to get to kn...
ragnaralpha7199
 
Top Mobile App Development Trends Shaping the Future
Top Mobile App Development Trends Shaping the Future
ChicMic Studios
 
IAREUOUSTPIDWHY$)CHARACTERARERWUEEJJSKWNSND
IAREUOUSTPIDWHY$)CHARACTERARERWUEEJJSKWNSND
notgachabite123
 
最新版美国特拉华大学毕业证(UDel毕业证书)原版定制
最新版美国特拉华大学毕业证(UDel毕业证书)原版定制
taqyea
 
CBUSDAW - Ash Lewis - Reducing LLM Hallucinations
CBUSDAW - Ash Lewis - Reducing LLM Hallucinations
Jason Packer
 
Topic 2 - Cloud Computing Basics,,,.pptx
Topic 2 - Cloud Computing Basics,,,.pptx
oneillp100
 
COMPUTER ETHICS AND CRIME.......................................................
COMPUTER ETHICS AND CRIME.......................................................
FOOLKUMARI
 
inside the internet - understanding the TCP/IP protocol
inside the internet - understanding the TCP/IP protocol
shainweniton02
 
Internet & Protocols : A Blueprint of the Internet System
Internet & Protocols : A Blueprint of the Internet System
cpnabil59
 
NOC Services for maintaining network as MSA.ppt
NOC Services for maintaining network as MSA.ppt
ankurnagar22
 
AWS Basics for non technical people.pptx
AWS Basics for non technical people.pptx
sanjeevkumar123577
 
history of internet in nepal Class-8 (sparsha).pptx
history of internet in nepal Class-8 (sparsha).pptx
SPARSH508080
 
ChatGPT A.I. Powered Chatbot and Popularization.pdf
ChatGPT A.I. Powered Chatbot and Popularization.pdf
StanleySamson1
 
Topic 1 Foundational IT Infrastructure_.pptx
Topic 1 Foundational IT Infrastructure_.pptx
oneillp100
 
3 years of Quarkus in production, what have we learned - Devoxx Polen
3 years of Quarkus in production, what have we learned - Devoxx Polen
Jago de Vreede
 
最新版美国威斯康星大学绿湾分校毕业证(UWGB毕业证书)原版定制
最新版美国威斯康星大学绿湾分校毕业证(UWGB毕业证书)原版定制
Taqyea
 
Make DDoS expensive for the threat actors
Make DDoS expensive for the threat actors
APNIC
 
Lecture 3.1 Analysing the Global Business Environment .pptx
Lecture 3.1 Analysing the Global Business Environment .pptx
shofalbsb
 

以 Laravel 經驗開發 Hyperf 應用