SlideShare a Scribd company logo
1 of 16
DelphiIDEを使わない開発スタイルの紹介
岡野真也
自己紹介
岡野真也
@tokibito
ブログ: 偏った言語信者の垂れ流し
http://d.hatena.ne.jp/nullpobug/
趣味でツール類をDelphiで作成しています
仕事ではPythonを使ってます
今日は
今日のお題
DelphiIDEを使わずに
今日のお題
コマンドラインユーティリティと
テキストエディタで開発
IDEを使わない理由
● 使い慣れたテキストエディタでプログラミングしたい
– キーボード入力速いからさー
● 使い慣れたコマンドライン入力のほうが速くて楽
– マウスが壊れても大丈夫!
– いやーキーボード入力速いからさー
愛用してます
● Console2 - コマンドプロンプトをタブで複数開ける
● GVim - いろんなOSに対応しているテキストエディタ
IDEを使わずにどうやるか
Delphiのプログラムのコンパイル
Delphiのプログラムのコンパイル
● RADStudioのコマンドラインユーティリティ
– DCC32.EXE (Win32用コンパイラ)
– DCC64.EXE (Win64用クロスコンパイラ)
– DCCOSX.EXE (MacOSX用クロスコンパイラ)
コマンドラインコンパイラの使い方
> dcc32 MyProject.dpr
しかしだるい
● 毎回長いコマンドを入力するのはだるい
– ビルドツールを使いましょう。
ビルドツール
● Make
– Unix/Linuxではおなじみ
– Makefileに記述された作業を実行するコマンドツール
● MSBuild
– Microsoftのビルドツール
– MSBuild形式のプロジェクトをビルドできる
– .NET Frameworkに含まれる
– Delphiのdprojはこの形式
ビルドツールの使い方
> make
> rsvars.bat
> msbuild
これでハッピー?
デバッグとかフォームデザイナどうした?
IDEを使う部分もある
● デバッガ (デバッガをエディタに組み込むのつらいし..)
● フォームデザイナ (コードで生成するのはつらいし...)
まとめ
● コマンドラインユーティリティでコンパイルできる
● ビルドツールは便利
● テキストエディタでつらい部分はIDEも使う

More Related Content

What's hot

第 1 回 Jetson ユーザー勉強会
第 1 回 Jetson ユーザー勉強会第 1 回 Jetson ユーザー勉強会
第 1 回 Jetson ユーザー勉強会NVIDIA Japan
 
用十分鐘《讓你的專案一開始就搞砸》!
用十分鐘《讓你的專案一開始就搞砸》!用十分鐘《讓你的專案一開始就搞砸》!
用十分鐘《讓你的專案一開始就搞砸》!鍾誠 陳鍾誠
 
Hello, DirectCompute
Hello, DirectComputeHello, DirectCompute
Hello, DirectComputedasyprocta
 
Binderのはじめの一歩とAndroid
Binderのはじめの一歩とAndroidBinderのはじめの一歩とAndroid
Binderのはじめの一歩とAndroidl_b__
 
Yocto bspを作ってみた
Yocto bspを作ってみたYocto bspを作ってみた
Yocto bspを作ってみたwata2ki
 
async/await不要論
async/await不要論async/await不要論
async/await不要論bleis tift
 
View Customize Pluginで出来ること
View Customize Pluginで出来ることView Customize Pluginで出来ること
View Customize Pluginで出来ることonozaty
 
第1回JUnit勉強会ハンズオン
第1回JUnit勉強会ハンズオン第1回JUnit勉強会ハンズオン
第1回JUnit勉強会ハンズオンequj65
 
Redmineプラグイン導入・開発入門
Redmineプラグイン導入・開発入門Redmineプラグイン導入・開発入門
Redmineプラグイン導入・開発入門Minoru Maeda
 
/etc/network/interfaces について
/etc/network/interfaces について/etc/network/interfaces について
/etc/network/interfaces についてKazuhiro Nishiyama
 
テストは料理だ!テストのレシピを見てみよう #wacate
テストは料理だ!テストのレシピを見てみよう #wacateテストは料理だ!テストのレシピを見てみよう #wacate
テストは料理だ!テストのレシピを見てみよう #wacateKazuhiro Takehana
 
C++ REST SDKを使ってWebサービスを利用する
C++ REST SDKを使ってWebサービスを利用するC++ REST SDKを使ってWebサービスを利用する
C++ REST SDKを使ってWebサービスを利用するYou&I
 
挫折しないRedmine
挫折しないRedmine挫折しないRedmine
挫折しないRedmineGo Maeda
 
コードレビューのアンチパターンについて考えてみた
コードレビューのアンチパターンについて考えてみたコードレビューのアンチパターンについて考えてみた
コードレビューのアンチパターンについて考えてみたHisao Soyama
 
AI-first Code Editor 「Cursor」の機能紹介
AI-first Code Editor 「Cursor」の機能紹介AI-first Code Editor 「Cursor」の機能紹介
AI-first Code Editor 「Cursor」の機能紹介ssuser39314d
 
20分くらいでわかった気分になれるC++20コルーチン
20分くらいでわかった気分になれるC++20コルーチン20分くらいでわかった気分になれるC++20コルーチン
20分くらいでわかった気分になれるC++20コルーチンyohhoy
 
Python, RaspberryPi, Arduinoで作る消費電力モニタリングシステム
Python, RaspberryPi, Arduinoで作る消費電力モニタリングシステムPython, RaspberryPi, Arduinoで作る消費電力モニタリングシステム
Python, RaspberryPi, Arduinoで作る消費電力モニタリングシステムJunichi Kakisako
 
Redmine にいろいろ埋め込んでみた
Redmine にいろいろ埋め込んでみたRedmine にいろいろ埋め込んでみた
Redmine にいろいろ埋め込んでみたKohei Nakamura
 
Schematic diagrams of GPUs' architecture and Time evolution of theoretical FL...
Schematic diagrams of GPUs' architecture and Time evolution of theoretical FL...Schematic diagrams of GPUs' architecture and Time evolution of theoretical FL...
Schematic diagrams of GPUs' architecture and Time evolution of theoretical FL...智啓 出川
 
ある工場の Redmine 2022 〜ある工場の Redmine 5.0 バージョンアップ〜 ( Redmine of one plant 2022 ...
ある工場の Redmine 2022 〜ある工場の Redmine 5.0 バージョンアップ〜 (  Redmine of one plant 2022 ...ある工場の Redmine 2022 〜ある工場の Redmine 5.0 バージョンアップ〜 (  Redmine of one plant 2022 ...
ある工場の Redmine 2022 〜ある工場の Redmine 5.0 バージョンアップ〜 ( Redmine of one plant 2022 ...Kohei Nakamura
 

What's hot (20)

第 1 回 Jetson ユーザー勉強会
第 1 回 Jetson ユーザー勉強会第 1 回 Jetson ユーザー勉強会
第 1 回 Jetson ユーザー勉強会
 
用十分鐘《讓你的專案一開始就搞砸》!
用十分鐘《讓你的專案一開始就搞砸》!用十分鐘《讓你的專案一開始就搞砸》!
用十分鐘《讓你的專案一開始就搞砸》!
 
Hello, DirectCompute
Hello, DirectComputeHello, DirectCompute
Hello, DirectCompute
 
Binderのはじめの一歩とAndroid
Binderのはじめの一歩とAndroidBinderのはじめの一歩とAndroid
Binderのはじめの一歩とAndroid
 
Yocto bspを作ってみた
Yocto bspを作ってみたYocto bspを作ってみた
Yocto bspを作ってみた
 
async/await不要論
async/await不要論async/await不要論
async/await不要論
 
View Customize Pluginで出来ること
View Customize Pluginで出来ることView Customize Pluginで出来ること
View Customize Pluginで出来ること
 
第1回JUnit勉強会ハンズオン
第1回JUnit勉強会ハンズオン第1回JUnit勉強会ハンズオン
第1回JUnit勉強会ハンズオン
 
Redmineプラグイン導入・開発入門
Redmineプラグイン導入・開発入門Redmineプラグイン導入・開発入門
Redmineプラグイン導入・開発入門
 
/etc/network/interfaces について
/etc/network/interfaces について/etc/network/interfaces について
/etc/network/interfaces について
 
テストは料理だ!テストのレシピを見てみよう #wacate
テストは料理だ!テストのレシピを見てみよう #wacateテストは料理だ!テストのレシピを見てみよう #wacate
テストは料理だ!テストのレシピを見てみよう #wacate
 
C++ REST SDKを使ってWebサービスを利用する
C++ REST SDKを使ってWebサービスを利用するC++ REST SDKを使ってWebサービスを利用する
C++ REST SDKを使ってWebサービスを利用する
 
挫折しないRedmine
挫折しないRedmine挫折しないRedmine
挫折しないRedmine
 
コードレビューのアンチパターンについて考えてみた
コードレビューのアンチパターンについて考えてみたコードレビューのアンチパターンについて考えてみた
コードレビューのアンチパターンについて考えてみた
 
AI-first Code Editor 「Cursor」の機能紹介
AI-first Code Editor 「Cursor」の機能紹介AI-first Code Editor 「Cursor」の機能紹介
AI-first Code Editor 「Cursor」の機能紹介
 
20分くらいでわかった気分になれるC++20コルーチン
20分くらいでわかった気分になれるC++20コルーチン20分くらいでわかった気分になれるC++20コルーチン
20分くらいでわかった気分になれるC++20コルーチン
 
Python, RaspberryPi, Arduinoで作る消費電力モニタリングシステム
Python, RaspberryPi, Arduinoで作る消費電力モニタリングシステムPython, RaspberryPi, Arduinoで作る消費電力モニタリングシステム
Python, RaspberryPi, Arduinoで作る消費電力モニタリングシステム
 
Redmine にいろいろ埋め込んでみた
Redmine にいろいろ埋め込んでみたRedmine にいろいろ埋め込んでみた
Redmine にいろいろ埋め込んでみた
 
Schematic diagrams of GPUs' architecture and Time evolution of theoretical FL...
Schematic diagrams of GPUs' architecture and Time evolution of theoretical FL...Schematic diagrams of GPUs' architecture and Time evolution of theoretical FL...
Schematic diagrams of GPUs' architecture and Time evolution of theoretical FL...
 
ある工場の Redmine 2022 〜ある工場の Redmine 5.0 バージョンアップ〜 ( Redmine of one plant 2022 ...
ある工場の Redmine 2022 〜ある工場の Redmine 5.0 バージョンアップ〜 (  Redmine of one plant 2022 ...ある工場の Redmine 2022 〜ある工場の Redmine 5.0 バージョンアップ〜 (  Redmine of one plant 2022 ...
ある工場の Redmine 2022 〜ある工場の Redmine 5.0 バージョンアップ〜 ( Redmine of one plant 2022 ...
 

Similar to Delphi ideを使わない開発スタイルの紹介

「RAD Studio XE5によるマルチ言語/マルチデバイス開発の進め方」
「RAD Studio XE5によるマルチ言語/マルチデバイス開発の進め方」 「RAD Studio XE5によるマルチ言語/マルチデバイス開発の進め方」
「RAD Studio XE5によるマルチ言語/マルチデバイス開発の進め方」 Embarcadero Technologies
 
趣味プロダクトで楽しいコードライフワークを送る
趣味プロダクトで楽しいコードライフワークを送る趣味プロダクトで楽しいコードライフワークを送る
趣味プロダクトで楽しいコードライフワークを送るvolpe_hd28v
 
YAPC::Hokkaido 2016 「普段使い言語環境」更新によるスキルリセットサバイバルガイド
YAPC::Hokkaido 2016 「普段使い言語環境」更新によるスキルリセットサバイバルガイドYAPC::Hokkaido 2016 「普段使い言語環境」更新によるスキルリセットサバイバルガイド
YAPC::Hokkaido 2016 「普段使い言語環境」更新によるスキルリセットサバイバルガイドkeroyonn
 
CICDを始める前に...ビルドデプロイについて再入門
CICDを始める前に...ビルドデプロイについて再入門CICDを始める前に...ビルドデプロイについて再入門
CICDを始める前に...ビルドデプロイについて再入門harukikato1
 
RAD Studioで始めるマルチデバイス・クロスプラットフォーム開発ワークショップ
RAD Studioで始めるマルチデバイス・クロスプラットフォーム開発ワークショップRAD Studioで始めるマルチデバイス・クロスプラットフォーム開発ワークショップ
RAD Studioで始めるマルチデバイス・クロスプラットフォーム開発ワークショップKaz Aiso
 
Sencha & Delphi Ready Studiy
Sencha & Delphi Ready StudiySencha & Delphi Ready Studiy
Sencha & Delphi Ready StudiyJun Hosokawa
 
NGN2012B 発表資料
NGN2012B 発表資料NGN2012B 発表資料
NGN2012B 発表資料Kenji Nagase
 
20120927 findjob4 dev_ops
20120927 findjob4 dev_ops20120927 findjob4 dev_ops
20120927 findjob4 dev_opsume3_
 
PHP でも活用できる Makefile
PHP でも活用できる MakefilePHP でも活用できる Makefile
PHP でも活用できる MakefileShohei Okada
 
LINTから理解するTDD
LINTから理解するTDDLINTから理解するTDD
LINTから理解するTDDMasafumi Sasaki
 
WordPress の国際化方法
WordPress の国際化方法WordPress の国際化方法
WordPress の国際化方法Fumito Mizuno
 
プログラミング講座 #3 コードを書く
プログラミング講座 #3 コードを書くプログラミング講座 #3 コードを書く
プログラミング講座 #3 コードを書くZOIdayo
 
vscode pipenv docker
vscode pipenv dockervscode pipenv docker
vscode pipenv dockerikdysfm
 
Dockerを使ってみよう
Dockerを使ってみようDockerを使ってみよう
Dockerを使ってみようRyo Adachi
 
Windowsアプリテスト自動化 [Friendly+delphi]
Windowsアプリテスト自動化 [Friendly+delphi]Windowsアプリテスト自動化 [Friendly+delphi]
Windowsアプリテスト自動化 [Friendly+delphi]Tatsuya Ishikawa
 
二求の塾 プログラミング講座(2019-08-10)
二求の塾 プログラミング講座(2019-08-10)二求の塾 プログラミング講座(2019-08-10)
二求の塾 プログラミング講座(2019-08-10)Atsuo Yamasaki
 
DLR言語によるSilverlightプログラミング
DLR言語によるSilverlightプログラミングDLR言語によるSilverlightプログラミング
DLR言語によるSilverlightプログラミングterurou
 
Googleのインフラ技術から考える理想のDevOps
Googleのインフラ技術から考える理想のDevOpsGoogleのインフラ技術から考える理想のDevOps
Googleのインフラ技術から考える理想のDevOpsEtsuji Nakai
 
開発者は仕事でリーダブルなコードを書けるのか?
開発者は仕事でリーダブルなコードを書けるのか?開発者は仕事でリーダブルなコードを書けるのか?
開発者は仕事でリーダブルなコードを書けるのか?Kouhei Sutou
 

Similar to Delphi ideを使わない開発スタイルの紹介 (20)

「RAD Studio XE5によるマルチ言語/マルチデバイス開発の進め方」
「RAD Studio XE5によるマルチ言語/マルチデバイス開発の進め方」 「RAD Studio XE5によるマルチ言語/マルチデバイス開発の進め方」
「RAD Studio XE5によるマルチ言語/マルチデバイス開発の進め方」
 
趣味プロダクトで楽しいコードライフワークを送る
趣味プロダクトで楽しいコードライフワークを送る趣味プロダクトで楽しいコードライフワークを送る
趣味プロダクトで楽しいコードライフワークを送る
 
ZendStudioのご紹介
ZendStudioのご紹介ZendStudioのご紹介
ZendStudioのご紹介
 
YAPC::Hokkaido 2016 「普段使い言語環境」更新によるスキルリセットサバイバルガイド
YAPC::Hokkaido 2016 「普段使い言語環境」更新によるスキルリセットサバイバルガイドYAPC::Hokkaido 2016 「普段使い言語環境」更新によるスキルリセットサバイバルガイド
YAPC::Hokkaido 2016 「普段使い言語環境」更新によるスキルリセットサバイバルガイド
 
CICDを始める前に...ビルドデプロイについて再入門
CICDを始める前に...ビルドデプロイについて再入門CICDを始める前に...ビルドデプロイについて再入門
CICDを始める前に...ビルドデプロイについて再入門
 
RAD Studioで始めるマルチデバイス・クロスプラットフォーム開発ワークショップ
RAD Studioで始めるマルチデバイス・クロスプラットフォーム開発ワークショップRAD Studioで始めるマルチデバイス・クロスプラットフォーム開発ワークショップ
RAD Studioで始めるマルチデバイス・クロスプラットフォーム開発ワークショップ
 
Sencha & Delphi Ready Studiy
Sencha & Delphi Ready StudiySencha & Delphi Ready Studiy
Sencha & Delphi Ready Studiy
 
NGN2012B 発表資料
NGN2012B 発表資料NGN2012B 発表資料
NGN2012B 発表資料
 
20120927 findjob4 dev_ops
20120927 findjob4 dev_ops20120927 findjob4 dev_ops
20120927 findjob4 dev_ops
 
PHP でも活用できる Makefile
PHP でも活用できる MakefilePHP でも活用できる Makefile
PHP でも活用できる Makefile
 
LINTから理解するTDD
LINTから理解するTDDLINTから理解するTDD
LINTから理解するTDD
 
WordPress の国際化方法
WordPress の国際化方法WordPress の国際化方法
WordPress の国際化方法
 
プログラミング講座 #3 コードを書く
プログラミング講座 #3 コードを書くプログラミング講座 #3 コードを書く
プログラミング講座 #3 コードを書く
 
vscode pipenv docker
vscode pipenv dockervscode pipenv docker
vscode pipenv docker
 
Dockerを使ってみよう
Dockerを使ってみようDockerを使ってみよう
Dockerを使ってみよう
 
Windowsアプリテスト自動化 [Friendly+delphi]
Windowsアプリテスト自動化 [Friendly+delphi]Windowsアプリテスト自動化 [Friendly+delphi]
Windowsアプリテスト自動化 [Friendly+delphi]
 
二求の塾 プログラミング講座(2019-08-10)
二求の塾 プログラミング講座(2019-08-10)二求の塾 プログラミング講座(2019-08-10)
二求の塾 プログラミング講座(2019-08-10)
 
DLR言語によるSilverlightプログラミング
DLR言語によるSilverlightプログラミングDLR言語によるSilverlightプログラミング
DLR言語によるSilverlightプログラミング
 
Googleのインフラ技術から考える理想のDevOps
Googleのインフラ技術から考える理想のDevOpsGoogleのインフラ技術から考える理想のDevOps
Googleのインフラ技術から考える理想のDevOps
 
開発者は仕事でリーダブルなコードを書けるのか?
開発者は仕事でリーダブルなコードを書けるのか?開発者は仕事でリーダブルなコードを書けるのか?
開発者は仕事でリーダブルなコードを書けるのか?
 

More from Shinya Okano

Djangoエンジニアの観点から見たHue
Djangoエンジニアの観点から見たHueDjangoエンジニアの観点から見たHue
Djangoエンジニアの観点から見たHueShinya Okano
 
Djangoフレームワークのユーザーモデルと認証
Djangoフレームワークのユーザーモデルと認証Djangoフレームワークのユーザーモデルと認証
Djangoフレームワークのユーザーモデルと認証Shinya Okano
 
Djangoフレームワークの紹介
Djangoフレームワークの紹介Djangoフレームワークの紹介
Djangoフレームワークの紹介Shinya Okano
 
Pyconjp2016 pyftplib
Pyconjp2016 pyftplibPyconjp2016 pyftplib
Pyconjp2016 pyftplibShinya Okano
 
Python入門 コードリーディング - PyConJP2016
Python入門 コードリーディング - PyConJP2016Python入門 コードリーディング - PyConJP2016
Python入門 コードリーディング - PyConJP2016Shinya Okano
 
Djangoフレームワークの紹介
Djangoフレームワークの紹介Djangoフレームワークの紹介
Djangoフレームワークの紹介Shinya Okano
 
Djangoのエントリポイントとアプリケーションの仕組み
Djangoのエントリポイントとアプリケーションの仕組みDjangoのエントリポイントとアプリケーションの仕組み
Djangoのエントリポイントとアプリケーションの仕組みShinya Okano
 
Djangoフレームワークの紹介 OSC2015北海道
Djangoフレームワークの紹介 OSC2015北海道Djangoフレームワークの紹介 OSC2015北海道
Djangoフレームワークの紹介 OSC2015北海道Shinya Okano
 
Python札幌201406
Python札幌201406Python札幌201406
Python札幌201406Shinya Okano
 
Hadoopとその周辺の紹介
Hadoopとその周辺の紹介Hadoopとその周辺の紹介
Hadoopとその周辺の紹介Shinya Okano
 
2011.06.01 和歌山高専
2011.06.01 和歌山高専2011.06.01 和歌山高専
2011.06.01 和歌山高専Shinya Okano
 
電子書籍の話
電子書籍の話電子書籍の話
電子書籍の話Shinya Okano
 
写真共有アプリのバックエンドサーバー
写真共有アプリのバックエンドサーバー写真共有アプリのバックエンドサーバー
写真共有アプリのバックエンドサーバーShinya Okano
 
Python札幌 2012/06/17
Python札幌 2012/06/17Python札幌 2012/06/17
Python札幌 2012/06/17Shinya Okano
 
XenServerによるお手軽開発サーバ運用
XenServerによるお手軽開発サーバ運用XenServerによるお手軽開発サーバ運用
XenServerによるお手軽開発サーバ運用Shinya Okano
 
mixiアプリ『the Actress』運用にあたっての課題へのチャレンジ
mixiアプリ『the Actress』運用にあたっての課題へのチャレンジmixiアプリ『the Actress』運用にあたっての課題へのチャレンジ
mixiアプリ『the Actress』運用にあたっての課題へのチャレンジShinya Okano
 

More from Shinya Okano (17)

Djangoエンジニアの観点から見たHue
Djangoエンジニアの観点から見たHueDjangoエンジニアの観点から見たHue
Djangoエンジニアの観点から見たHue
 
Djangoフレームワークのユーザーモデルと認証
Djangoフレームワークのユーザーモデルと認証Djangoフレームワークのユーザーモデルと認証
Djangoフレームワークのユーザーモデルと認証
 
Djangoフレームワークの紹介
Djangoフレームワークの紹介Djangoフレームワークの紹介
Djangoフレームワークの紹介
 
Pyconjp2016 pyftplib
Pyconjp2016 pyftplibPyconjp2016 pyftplib
Pyconjp2016 pyftplib
 
Python入門 コードリーディング - PyConJP2016
Python入門 コードリーディング - PyConJP2016Python入門 コードリーディング - PyConJP2016
Python入門 コードリーディング - PyConJP2016
 
Djangoフレームワークの紹介
Djangoフレームワークの紹介Djangoフレームワークの紹介
Djangoフレームワークの紹介
 
Djangoのエントリポイントとアプリケーションの仕組み
Djangoのエントリポイントとアプリケーションの仕組みDjangoのエントリポイントとアプリケーションの仕組み
Djangoのエントリポイントとアプリケーションの仕組み
 
Djangoフレームワークの紹介 OSC2015北海道
Djangoフレームワークの紹介 OSC2015北海道Djangoフレームワークの紹介 OSC2015北海道
Djangoフレームワークの紹介 OSC2015北海道
 
Python札幌201406
Python札幌201406Python札幌201406
Python札幌201406
 
Spring4Dの紹介
Spring4Dの紹介Spring4Dの紹介
Spring4Dの紹介
 
Hadoopとその周辺の紹介
Hadoopとその周辺の紹介Hadoopとその周辺の紹介
Hadoopとその周辺の紹介
 
2011.06.01 和歌山高専
2011.06.01 和歌山高専2011.06.01 和歌山高専
2011.06.01 和歌山高専
 
電子書籍の話
電子書籍の話電子書籍の話
電子書籍の話
 
写真共有アプリのバックエンドサーバー
写真共有アプリのバックエンドサーバー写真共有アプリのバックエンドサーバー
写真共有アプリのバックエンドサーバー
 
Python札幌 2012/06/17
Python札幌 2012/06/17Python札幌 2012/06/17
Python札幌 2012/06/17
 
XenServerによるお手軽開発サーバ運用
XenServerによるお手軽開発サーバ運用XenServerによるお手軽開発サーバ運用
XenServerによるお手軽開発サーバ運用
 
mixiアプリ『the Actress』運用にあたっての課題へのチャレンジ
mixiアプリ『the Actress』運用にあたっての課題へのチャレンジmixiアプリ『the Actress』運用にあたっての課題へのチャレンジ
mixiアプリ『the Actress』運用にあたっての課題へのチャレンジ
 

Delphi ideを使わない開発スタイルの紹介