靴4:靴の次のバージョン
靴は、クロスプラットフォーム(MAC、Windows、Linux)GUIプログラミング用の小さなDSLです。単なる別のC ++ライブラリラッパーではなく、本物のRubyのように感じます。一部のサンプル、マニュアル、無料の本については、靴のウェブサイトをご覧ください。
靴がどのように見えるか見たいですか?さて、ここに行きます!スクリプトを与えられた:
Shoes . app width : 300 , height : 200 do
background lime .. blue
stack do
para "Welcome to the world of Shoes!"
button "Click me" do alert "Nice click!" end
image "http://shoesrb.com/img/shoes-icon.png" ,
margin_top : 20 , margin_left : 10
end
endこれにより、次のアプリケーションが得られます。
Shoes 4はネイティブウィジェットを使用しているため、ルックアンドフィールはオペレーティングシステムで異なります。
一日にさかのぼると、_という名前の男がいました。彼は、Hackety Hackとして知られるプロジェクトを作成して、すべての人にプログラミングを教えることです。地球のすべての角に到達するために、_ WhyはWindows、Mac OS X、Linuxでハッキーハックを機能させることにしました。これは多くの作業であったので、_彼のツールキットを世界と共有することにしました。したがって、靴が生まれました。
こんにちは、チェックしてくれてありがとう!シューズ4はプレビュー段階にあります。現在、ほぼすべての靴DSLをサポートしていますが、サポートされていないスポットと既知の問題がまだいくつかあります。簡単にインストールするために、更新されたプレビューバージョンをRubygemsに定期的にリリースしています。まだ冒険的でない場合は、まだ古い靴を使用できます!
靴を手に入れるには2つの方法があります4 - プレビューの宝石のリリースとGithubから直接インストールします。どちらの場合も、現在のJrubyインストールが必要です。
Jruby 9.x+を使用することをお勧めします。現在、テストの大部分は9.1に対してです。 Jruby 1.7.xは機能する可能性がありますが、4.0.0.pre6からテストされていません。
したがって、最初のステップは、JDK(ShoesもOpenJDKで動作する)とJrubyをインストールすることです。オペレーティングシステムに適したJrubyバージョンを取得してください。 Linux/Macでは、Rubyインストールツールを使用してJrubyをインストールすることもできます。たとえば、RVM:
$ rvm install jruby
JDKバージョン注: Jrubyバージョン9では、7または8のJDKバージョンが必要です-JDK 9はまだJrubyで動作しないため、靴では動作しません。また、JDKメジャーバージョン内では、最新の更新をインストールしていることを確認してください。新しいバージョンがバグを解決した場合があります。
SWT要件: Shoes 4がデフォルトのバックエンドのためにSWTに構築されていることに注意してください。それは通常、SWTを自分でインストールする必要がないため、通常(上記のJruby/JDKの必要性を除く)。ただし、それはSWTと同じ基本システム要件があることを意味します。 Linuxの場合、必要に応じてGTK+> = 2.10または> = 3.0が必要です。さらに、今のところ、腕のサポートはありません(Raspberry Piが必要になるため)。
$ gem install shoes --pre
C:tmp> jruby -S gem install shoes --pre
出血エッジになりたい場合、またはコードを寄付したい場合は、GitHubリポジトリから直接インストールする必要があります。
リポジトリを分岐し、フォークをクローンします
$ git clone git://github.com/shoes/shoes4.git
地元の環境を設定します
$ cd shoes4
$ gem install bundler && bundle install
注:RVM、RBENV、またはそのようなものを入手した場合、JrubyバージョンXXを使用する必要があると不満を言うかもしれません。それは、.ruby-versionファイルを最新の状態に保つためです。 Jrubyバージョン> = 9.0.0.0で実行できるはずですが、最新バージョンをお勧めします。
リポジトリを分岐し、フォークをクローンします
C:tmp> git clone git://github.com/shoes/shoes4.git
地元の環境を設定します
C:tmp>cd shoes4
C:tmpshoes4>jruby -S gem install bundler
C:tmpshoes4>jruby -S bundle install
あなたは行く準備ができています!
Shoes 4には、コマンドラインアプリランナーが付いています。靴アプリのファイル名を渡すだけです。
$ bin/shoes samples/simple_sound.rb
注: Windowsの場合、 C:tmpshoes4>binshoes samplessimple_sound.rb shoes 4をgemとしてインストールした場合、 C:tmp> shoes pathtofile.rb実行するだけです
また、次のように使用できるSWTバックエンドを使用する場合、単純なRubyスタータースクリプトもあります。
$ bin/shoes-swt samples/simple_sound.rb
Jruby(JVM)には追加のパラメーターが必要であるため、これはまだMacでは機能しません。ここでは、次のことを行うことができます(基本的にBin/Shoesが行うことです):
$ jruby -J-XstartOnFirstThread bin/shoes-swt samples/simple_sound.rb
もう1つの選択肢は、アプリケーションの一番上にrequire 'shoes'ことです。
$ jruby path/to/file.rb
OS Xでは、Jrubyに追加のパラメーターを提供する必要があります
$ jruby -J-XstartOnFirstThread path/to/file.rb
rake samplesを実行し、CTR + Cで終了するまで動作していると思われるランダムサンプルを実行できます。それらのいくつかは非常に単純ですが、他のものはより複雑なものです。これらのサンプルに問題がある場合は、お知らせください!
SHOES_USE_INSTALLED環境変数をTrueに設定することにより、インストールされたバージョンの靴( shoesコマンド)を使用して、地元のbin/shoesの代わりにサンプルを実行することもできます。
包装はただの赤ちゃんなので、優しくしてください。
アプリをパッケージ化するには、環境に靴の宝石を取り付ける必要があります。 GEMのインストールを行わなかった場合は、いつでも宝石を生成し、現在のソースからインストールできます。
$ rake install:all
これで、アプリをパッケージ化できます。しかし、最初に、こちらをご覧ください:
.gemspecまたはGemfileを検出した場合、おそらく適切に機能しないでしょう。 Warblerを使用します。Warblerは常にこれらのファイルを探します。仕様を実行した場合、次のような警告に気付くかもしれません。警告:バンドラー「パス」コンポーネントは現在サポートされていません。 `Shoes-4.0.0.Pre1 'コンポーネントはバンドルされていません。あなたのアプリケーションは起動に失敗するかもしれません!
それはウグイスの話です。実際、とにかく靴の宝石をこっそり盗みますが、わかりません。
さて、今は本当です。最も簡単なことは、スクリプトを単独でディレクトリに入れることです。
$ bin/shoes package --mac path/to/directory-of/your-shoes-app.rb
これにより、Macアプリが生成され、 path/to/directory-of/pkg/your-shoes-app.appで見つけることができます。
靴アプリを瓶としてパッケージ化することもできます。
$ bin/shoes package --jar path/to/directory-of/your-shoes-app.rb
上記と同じディレクトリ、すなわちパス//directory/pkg/your-shoes-app.jarに瓶を見つけることができます
より多くのコントロールが必要な場合(「Shoesアプリ」以外のアプリに名前を付けたい場合、または以前に話したすべてのファイルを含めたくない場合)、 app.yamlファイルを作成します。詳細については、例を参照してください。
注: app.yamlを使用する場合、各オプションをカスタマイズまたはコメントする必要があります。例は単なる例です;)
スクリプトのすぐ横にapp.yamlファイルを持っている場合、3つのオプションがあります。
$ bin/shoes package --mac path/to/directory-of/your-shoes-app.rb
$ bin/shoes package --mac path/to/directory-of/app.yaml
$ bin/shoes package --mac path/to/directory-of
Packagerは、それらのコマンドのいずれかを使用して指示を見つけます。繰り返しますが、プロジェクトのディレクトリ内のpkgディレクトリにアプリがあります。 bin/shoes --help 。
ああ、 bin/shoesで靴アプリを実行することもできます。
それは素晴らしいです、ありがとう!
私たちの問題の1つを修正するために試してみることができます。私たちは、靴の貢献を始めるのに適していると思われる問題のために、新しいタグ「Newcomer Friendly」を導入しました。これらの問題は、比較的簡単に達成できるか、他の多くの靴コード(完全に新しい機能など)に依存しないため、開始が容易になります。問題に取り組んでください - 必要に応じてお手伝いします。タグは単なる提案です! =)
また、他のすべてのサンプルとともに、サンプル/READMEですでに機能するサンプルのリストがあります。新しいサンプルを実行するようにすることができます。そのためには、 rake non_samplesを実行してランダムサンプルを実行することができます。非作業サンプルをリストしたい場合は、 rake list_non_samples実行することもできます。
すべてを使用して、Shoes 4がTDDスタイルの開発されているため、スペックを書くようにしてください(以下の実行仕様セクションを参照)。したがって、テストを破らないようにしてください:-)
テストや実装について不確かだと感じた場合は、問題やプルリクエストを開いてください。プルリクエストは行う必要はありません - それらは素晴らしいディスカッションスターターです!靴を作るために、あなたの貢献を融合させる準備を整えるのを手伝ってくれてうれしいです4!
実際、コードを確認し、靴4の周りの道を見つけるのを手伝うための早期プルリクエストに大いに感謝しています。 =)
質問がある場合は、FreeNode IRCの#Shoesチャンネルに自由に立ち寄ってください。人々は即座に反応しないかもしれませんが、しばらくすると誰かが応答します:-)
また、プロジェクトに精通するために、いくつかのコードをリファクタリングしたり、いくつかの仕様を書いたりする良い方法であることもあります。このアプローチを試してみたい場合は、コードの気候を見て、リファクタリングの候補者を見つけるか、仕様をローカルで実行した後、カバレッジディレクトリとOpen Index.htmlにピークを取ります - 現在のカバレッジデータが表示されます。カバーされていないものを見て、おそらくあなたはそれの仕様を書くことができますか?
スペックの実行方法については、以前に言及した方法については、次のセクションを参照してください:-)
Shoes 4は、RSPECを使用してTDDスタイルで開発されています。あなたは仕様を書いて実行する必要があります:)
これを行う最も簡単な方法は、レーキタスクを使用することです。
$ bundle exec rake
( rake --tasks完全なリストのタスク)
他のモードの詳細が仕様を実行したい場合は、テスト方法と方法に関する哲学を実行します。Wikiのテストシューズエントリをご覧ください。
一日にさかのぼると、_という名前の男がいました。彼は、Hackety Hackとして知られるプロジェクトを作成して、すべての人にプログラミングを教えることです。地球のすべての角に到達するために、_ WhyはWindows、Mac OS X、Linuxでハッキーハックを機能させることにしました。これは多くの作業であったので、_彼のツールキットを世界と共有することにしました。したがって、靴が生まれました。
靴は、地球の隅々で、すべての人にプログラミングを教えるために生まれました。 Ruby /英語をあまりよく書いていないので、英語が悪いという新しいプログラマーやプログラマーを気分が悪くするのはクールではありません。そして、明らかに、誰かの宗教、民族、人種、性同一性、またはその個人的なものに向けられた他の反社会的コメントは、ここでチャンキー・ベーコンの土地では容認されません!コミュニティメンバーがプロジェクトスペース(コード、問題、チャットルーム、メーリングリスト)でコメントが途中であると感じた場合、私たちの行動規範に従って改善する方法を親切にお知らせします。
一番下の行は:靴を楽しんでください!
靴で何が起こっているのかを最新の状態に保ちたい場合は、さまざまな場所で私たちを見つけることができます。
シューズコミュニティと連絡を取りたいですか?それは素晴らしいことです!ここでご連絡ください:
しかし、私たちはこのリポジトリ/その問題の開発に関するほとんどの議論を維持し、誰もがそれらを見て調べることができるようにします。