SlideShare uma empresa Scribd logo
1 de 18
QtでIRCクライアント作ってみた
@luyikei
自己紹介
●
@luyikei です。
● https://twitter.com/luyikei
●
まず最初に・・・
●
プロジェクトを作成します
●
例ではプロジェクト名はQtestIRCでやります
●
ターゲット!!
Freenode の #luyikei 
まずは UI を作成しましょう
部品
● QPushButton : connectButton
● QPushButton : disconnectButton
● QLineInput : inputLineEdit
● QPushButton : submitButton
● QTabWidget
● QTableVIew : messageView
● QTextEdit : logView
Log と Message 完全分離(雑)
●
TabWidget を使って Log と Message を振り分け
る。
→これによってログを綺麗に表示する手間が省
ける(爆)
ヘッダーファイル
●
IRC も所詮ただの socket を使った簡易チャット
システム
●
でも便利
● private:
QTcpSocket *socket; // IRC 通信用
QStandardItemModel *model; // messageView
ヘッダーファイル 2
● private slots:
void readData(); // socket の IRC メッセージ取得用 SLOT
void connectToServer(); // connectButton の SLOT
void disconnectFromServer(); /* disconnectButton の
SLOT */
void sendMessage(); // submitButton の SLOT
まずは MainWindow::MainWindow から
socket = new QTcpSocket(this);
connect(socket,SIGNAL(readyRead()),this,SLOT(readData()));
connect(ui->connectButton,SIGNAL(clicked()),this,SLOT(connectToServer()));
connect(ui-
>disconnectButton,SIGNAL(clicked()),this,SLOT(disconnectFromServer()));
connect(ui->submitButton,SIGNAL(clicked()),this,SLOT(sendMessage()));
model = new QStandardItemModel(0,1,this);
model->setHorizontalHeaderItem(0,new QStandardItem("Username"));
model->setHorizontalHeaderItem(1,new QStandardItem("Message"));
ui->messageView->setModel(model);
まずは connectToServer ()から
socket->connectToHost(QString("chat.freenode.net"),6665); /* freenode に接
続 */
socket->write("USER QtestIRC QtestIRC QtestIRC QtestIRC n"); /* USER を
登録 */
socket->write("NICK QtestIRC n"); // ニック を登録
socket->write("JOIN #luyikei n"); // #luyikei に入室
IRC の書式① 接続編
USER <username> <user's mode> <unused> <real name>
※ クライアントが新しく接続する場合に使います。
例(雑):
USER QtestIRC QtestIRC QtestIRC QtestIRC
______________________________________________________________________
NICK <nickname>
※ ニックネームを設定します
例(雑):
NICK QtestIRC
IRC の書式② 入室編
JOIN <ルーム名>
例:
JOIN #luyikei
sendMessage()
QString toSend = QString("PRIVMSG #luyikei %1 n").arg(ui->inputLineEdit->text()); // 送信す
る IRC コマンド
socket->write(toSend.toUtf8().data()); // socket に write つまり送信
int row = model->rowCount(); // 追加する Item の列番号を取得
// messageView に追加する Username と Message modelに設定
model->setItem(row,0,new QStandardItem(QString("QtestIRC")));
model->setItem(row,1,new QStandardItem(ui->inputLineEdit->text()));
// 一応ログにも追加
ui->logView->append(toSend);
// inputLineEditを綺麗に
ui->inputLineEdit->clear();
IRC の書式② 文字送信編
PRIVMSG <ルーム名> <メッセージ>
例:
PRIVMSG #luyikei HELLO!!
readData()
QString readLine = socket->readLine(); // IRC サーバーから送られたメッセージを取得
ui->LogView->append(readLine); // logView にぶちこむ
if(!(readLine.indexOf("PRIVMSG") == -1 )){ // メッセージか判定
QString msg = readLine.split(":").last(); // メッセージを取得
QString tmp = readLine.split("!~").first();
QString username = tmp.right(tmp.size()-1); // ユーザー名を取得
int row = model->rowCount();
model->setItem(row,0,new QStandardItem(QString(username)));
model->setItem(row,1,new QStandardItem(QString(msg)));
}
if(socket->canReadLine()) readData(); // もしメッセージが残っている場合引き続き取得 再帰
IRC の書式③ 文字取得編
●
例:
:luyikei__!~luyikei@124x35x199x106.ap124.ftth.ucom.ne.jp PRIVMSG #luyikei :test
つまり・・・
:<nickname>!~<ホスト名> PRIVMSG <ルーム名> :<メッセージ>
として送られてくるのだ!
disconnectFromServer()
socket->flush(); // バッファに溜まっているメッセージを送信
socket->disconnect(); // 切断!!
終わり!

Mais conteúdo relacionado

Mais procurados

個人で作っているgoのプロダクト by zchee編
個人で作っているgoのプロダクト by zchee編個人で作っているgoのプロダクト by zchee編
個人で作っているgoのプロダクト by zchee編Koichi Shiraishi
 
Excite beer bash06
Excite beer bash06Excite beer bash06
Excite beer bash06Arata Honda
 
Windows環境でのgitまとめ(2016.1)
Windows環境でのgitまとめ(2016.1)Windows環境でのgitまとめ(2016.1)
Windows環境でのgitまとめ(2016.1)Tadahiro Ishisaka
 
WindowsでGitを使う際のベストプラクティス
WindowsでGitを使う際のベストプラクティスWindowsでGitを使う際のベストプラクティス
WindowsでGitを使う際のベストプラクティスRyo Sumasu
 
Git運用ダメ出し会 - ネクストスケープ 2014/05/27 パワーランチ資料
Git運用ダメ出し会 - ネクストスケープ 2014/05/27 パワーランチ資料Git運用ダメ出し会 - ネクストスケープ 2014/05/27 パワーランチ資料
Git運用ダメ出し会 - ネクストスケープ 2014/05/27 パワーランチ資料mihararyosuke
 
Windows環境でのgitまとめ(2016.8)
Windows環境でのgitまとめ(2016.8)Windows環境でのgitまとめ(2016.8)
Windows環境でのgitまとめ(2016.8)Tadahiro Ishisaka
 
Unityで関数型言語ぽく書く 如法会#1
Unityで関数型言語ぽく書く   如法会#1Unityで関数型言語ぽく書く   如法会#1
Unityで関数型言語ぽく書く 如法会#1NAKAOKU Takahiro
 
Gitコマンド勉強会 第0回 はじめに
Gitコマンド勉強会 第0回 はじめにGitコマンド勉強会 第0回 はじめに
Gitコマンド勉強会 第0回 はじめにKazuki Sakai
 
Qt のコミュニティと日本語での情報発信②
Qt のコミュニティと日本語での情報発信②Qt のコミュニティと日本語での情報発信②
Qt のコミュニティと日本語での情報発信②Yikei Lu
 
Gitoriousをubuntu 10.04 LTSへインストール
Gitoriousをubuntu 10.04 LTSへインストールGitoriousをubuntu 10.04 LTSへインストール
Gitoriousをubuntu 10.04 LTSへインストールKiyoshi SATOH
 
統一Qtコミュニティー
統一Qtコミュニティー統一Qtコミュニティー
統一QtコミュニティーYikei Lu
 
私が複数人開発で感じている Git・GitHubのうまみ
私が複数人開発で感じている Git・GitHubのうまみ私が複数人開発で感じている Git・GitHubのうまみ
私が複数人開発で感じている Git・GitHubのうまみShihomi Katayama
 
Read Groovy Compile process(Groovy Benkyoukai 2013)
Read Groovy Compile process(Groovy Benkyoukai 2013)Read Groovy Compile process(Groovy Benkyoukai 2013)
Read Groovy Compile process(Groovy Benkyoukai 2013)Uehara Junji
 
dokku を本番環境で使ってみた話
dokku を本番環境で使ってみた話dokku を本番環境で使ってみた話
dokku を本番環境で使ってみた話Kazuhiro Nishiyama
 
Gws 20130315 gradle_handson
Gws 20130315 gradle_handsonGws 20130315 gradle_handson
Gws 20130315 gradle_handsonNobuhiro Sue
 

Mais procurados (20)

個人で作っているgoのプロダクト by zchee編
個人で作っているgoのプロダクト by zchee編個人で作っているgoのプロダクト by zchee編
個人で作っているgoのプロダクト by zchee編
 
Excite beer bash06
Excite beer bash06Excite beer bash06
Excite beer bash06
 
Groovyの紹介20130323
Groovyの紹介20130323Groovyの紹介20130323
Groovyの紹介20130323
 
Windows環境でのgitまとめ(2016.1)
Windows環境でのgitまとめ(2016.1)Windows環境でのgitまとめ(2016.1)
Windows環境でのgitまとめ(2016.1)
 
WindowsでGitを使う際のベストプラクティス
WindowsでGitを使う際のベストプラクティスWindowsでGitを使う際のベストプラクティス
WindowsでGitを使う際のベストプラクティス
 
Git運用ダメ出し会 - ネクストスケープ 2014/05/27 パワーランチ資料
Git運用ダメ出し会 - ネクストスケープ 2014/05/27 パワーランチ資料Git運用ダメ出し会 - ネクストスケープ 2014/05/27 パワーランチ資料
Git運用ダメ出し会 - ネクストスケープ 2014/05/27 パワーランチ資料
 
Windows環境でのgitまとめ(2016.8)
Windows環境でのgitまとめ(2016.8)Windows環境でのgitまとめ(2016.8)
Windows環境でのgitまとめ(2016.8)
 
Unityで関数型言語ぽく書く 如法会#1
Unityで関数型言語ぽく書く   如法会#1Unityで関数型言語ぽく書く   如法会#1
Unityで関数型言語ぽく書く 如法会#1
 
it's Qt!
it's Qt!it's Qt!
it's Qt!
 
Gitコマンド勉強会 第0回 はじめに
Gitコマンド勉強会 第0回 はじめにGitコマンド勉強会 第0回 はじめに
Gitコマンド勉強会 第0回 はじめに
 
Qt のコミュニティと日本語での情報発信②
Qt のコミュニティと日本語での情報発信②Qt のコミュニティと日本語での情報発信②
Qt のコミュニティと日本語での情報発信②
 
mikutter入門
mikutter入門mikutter入門
mikutter入門
 
Gitoriousをubuntu 10.04 LTSへインストール
Gitoriousをubuntu 10.04 LTSへインストールGitoriousをubuntu 10.04 LTSへインストール
Gitoriousをubuntu 10.04 LTSへインストール
 
統一Qtコミュニティー
統一Qtコミュニティー統一Qtコミュニティー
統一Qtコミュニティー
 
私が複数人開発で感じている Git・GitHubのうまみ
私が複数人開発で感じている Git・GitHubのうまみ私が複数人開発で感じている Git・GitHubのうまみ
私が複数人開発で感じている Git・GitHubのうまみ
 
Read Groovy Compile process(Groovy Benkyoukai 2013)
Read Groovy Compile process(Groovy Benkyoukai 2013)Read Groovy Compile process(Groovy Benkyoukai 2013)
Read Groovy Compile process(Groovy Benkyoukai 2013)
 
Datalab and colaboratory
Datalab and colaboratoryDatalab and colaboratory
Datalab and colaboratory
 
dokku を本番環境で使ってみた話
dokku を本番環境で使ってみた話dokku を本番環境で使ってみた話
dokku を本番環境で使ってみた話
 
Serverless on GCP
Serverless on GCPServerless on GCP
Serverless on GCP
 
Gws 20130315 gradle_handson
Gws 20130315 gradle_handsonGws 20130315 gradle_handson
Gws 20130315 gradle_handson
 

Semelhante a Qt でIRCクライアント作ってみた

PyQtではじめるGUIプログラミング
PyQtではじめるGUIプログラミングPyQtではじめるGUIプログラミング
PyQtではじめるGUIプログラミングRansui Iso
 
NGK2018B マルチプラットフォームQtと日本Qtユーザー会の紹介
NGK2018B マルチプラットフォームQtと日本Qtユーザー会の紹介NGK2018B マルチプラットフォームQtと日本Qtユーザー会の紹介
NGK2018B マルチプラットフォームQtと日本Qtユーザー会の紹介Kazuo Asano (@kazuo_asa)
 
Qt名古屋勉強会へのお誘い(OSC名古屋2017LT)
Qt名古屋勉強会へのお誘い(OSC名古屋2017LT)Qt名古屋勉強会へのお誘い(OSC名古屋2017LT)
Qt名古屋勉強会へのお誘い(OSC名古屋2017LT)Naoki Matsumoto
 
CI/CD Pipeline を考える 〜KubeCon 2017 + CyberAgent の最大公倍数〜
CI/CD Pipeline を考える 〜KubeCon 2017 + CyberAgent の最大公倍数〜CI/CD Pipeline を考える 〜KubeCon 2017 + CyberAgent の最大公倍数〜
CI/CD Pipeline を考える 〜KubeCon 2017 + CyberAgent の最大公倍数〜Masaya Aoyama
 
QtでC++開発環境構築
QtでC++開発環境構築QtでC++開発環境構築
QtでC++開発環境構築You&I
 
Robotech2012講習会v01最終版v2
Robotech2012講習会v01最終版v2Robotech2012講習会v01最終版v2
Robotech2012講習会v01最終版v2Yuki Suga
 
みんなのブログ紹介
みんなのブログ紹介みんなのブログ紹介
みんなのブログ紹介Sanae Taniguchi
 
MQTTとAMQPと.NET
MQTTとAMQPと.NETMQTTとAMQPと.NET
MQTTとAMQPと.NETterurou
 
Piwik fluentd at OSC Tokyo 2015 Fall
Piwik fluentd at OSC Tokyo 2015 FallPiwik fluentd at OSC Tokyo 2015 Fall
Piwik fluentd at OSC Tokyo 2015 FallTakashi Yamamoto
 
.NET Core時代のCI/CD
.NET Core時代のCI/CD.NET Core時代のCI/CD
.NET Core時代のCI/CDYuta Matsumura
 
Kibanaでsysstatを可視化する
Kibanaでsysstatを可視化するKibanaでsysstatを可視化する
Kibanaでsysstatを可視化するKensuke Maeda
 
Fukuoka Ruby Award 2012
Fukuoka Ruby Award 2012Fukuoka Ruby Award 2012
Fukuoka Ruby Award 2012ThinReports
 
BuildKitの概要と最近の機能
BuildKitの概要と最近の機能BuildKitの概要と最近の機能
BuildKitの概要と最近の機能Kohei Tokunaga
 
Logにまつわるエトセトラ
LogにまつわるエトセトラLogにまつわるエトセトラ
Logにまつわるエトセトラleverages_event
 
Endo kitura on_bluemix
Endo kitura on_bluemixEndo kitura on_bluemix
Endo kitura on_bluemixjoohoun song
 
Kubernetes Meetup Tokyo #35_GitOps Toolkit による Kubernetes マニフェスト CD
Kubernetes Meetup Tokyo #35_GitOps Toolkit による Kubernetes マニフェスト CDKubernetes Meetup Tokyo #35_GitOps Toolkit による Kubernetes マニフェスト CD
Kubernetes Meetup Tokyo #35_GitOps Toolkit による Kubernetes マニフェスト CDPreferred Networks
 
RTミドルウエア講習会2015
RTミドルウエア講習会2015RTミドルウエア講習会2015
RTミドルウエア講習会2015Yuki Suga
 
HTTP2 時代の Web - web over http2
HTTP2 時代の Web - web over http2HTTP2 時代の Web - web over http2
HTTP2 時代の Web - web over http2Jxck Jxck
 

Semelhante a Qt でIRCクライアント作ってみた (20)

PyQtではじめるGUIプログラミング
PyQtではじめるGUIプログラミングPyQtではじめるGUIプログラミング
PyQtではじめるGUIプログラミング
 
NGK2018B マルチプラットフォームQtと日本Qtユーザー会の紹介
NGK2018B マルチプラットフォームQtと日本Qtユーザー会の紹介NGK2018B マルチプラットフォームQtと日本Qtユーザー会の紹介
NGK2018B マルチプラットフォームQtと日本Qtユーザー会の紹介
 
Qt名古屋勉強会へのお誘い(OSC名古屋2017LT)
Qt名古屋勉強会へのお誘い(OSC名古屋2017LT)Qt名古屋勉強会へのお誘い(OSC名古屋2017LT)
Qt名古屋勉強会へのお誘い(OSC名古屋2017LT)
 
CI/CD Pipeline を考える 〜KubeCon 2017 + CyberAgent の最大公倍数〜
CI/CD Pipeline を考える 〜KubeCon 2017 + CyberAgent の最大公倍数〜CI/CD Pipeline を考える 〜KubeCon 2017 + CyberAgent の最大公倍数〜
CI/CD Pipeline を考える 〜KubeCon 2017 + CyberAgent の最大公倍数〜
 
EdisonでMQTT
EdisonでMQTTEdisonでMQTT
EdisonでMQTT
 
QtでC++開発環境構築
QtでC++開発環境構築QtでC++開発環境構築
QtでC++開発環境構築
 
Robotech2012講習会v01最終版v2
Robotech2012講習会v01最終版v2Robotech2012講習会v01最終版v2
Robotech2012講習会v01最終版v2
 
Code ignitertalk 01
Code ignitertalk 01Code ignitertalk 01
Code ignitertalk 01
 
みんなのブログ紹介
みんなのブログ紹介みんなのブログ紹介
みんなのブログ紹介
 
MQTTとAMQPと.NET
MQTTとAMQPと.NETMQTTとAMQPと.NET
MQTTとAMQPと.NET
 
Piwik fluentd at OSC Tokyo 2015 Fall
Piwik fluentd at OSC Tokyo 2015 FallPiwik fluentd at OSC Tokyo 2015 Fall
Piwik fluentd at OSC Tokyo 2015 Fall
 
.NET Core時代のCI/CD
.NET Core時代のCI/CD.NET Core時代のCI/CD
.NET Core時代のCI/CD
 
Kibanaでsysstatを可視化する
Kibanaでsysstatを可視化するKibanaでsysstatを可視化する
Kibanaでsysstatを可視化する
 
Fukuoka Ruby Award 2012
Fukuoka Ruby Award 2012Fukuoka Ruby Award 2012
Fukuoka Ruby Award 2012
 
BuildKitの概要と最近の機能
BuildKitの概要と最近の機能BuildKitの概要と最近の機能
BuildKitの概要と最近の機能
 
Logにまつわるエトセトラ
LogにまつわるエトセトラLogにまつわるエトセトラ
Logにまつわるエトセトラ
 
Endo kitura on_bluemix
Endo kitura on_bluemixEndo kitura on_bluemix
Endo kitura on_bluemix
 
Kubernetes Meetup Tokyo #35_GitOps Toolkit による Kubernetes マニフェスト CD
Kubernetes Meetup Tokyo #35_GitOps Toolkit による Kubernetes マニフェスト CDKubernetes Meetup Tokyo #35_GitOps Toolkit による Kubernetes マニフェスト CD
Kubernetes Meetup Tokyo #35_GitOps Toolkit による Kubernetes マニフェスト CD
 
RTミドルウエア講習会2015
RTミドルウエア講習会2015RTミドルウエア講習会2015
RTミドルウエア講習会2015
 
HTTP2 時代の Web - web over http2
HTTP2 時代の Web - web over http2HTTP2 時代の Web - web over http2
HTTP2 時代の Web - web over http2
 

Último

NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 

Último (9)

NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 

Qt でIRCクライアント作ってみた