oss-gate / workshop

OSSの開発に未参加または参加したことはあるけどまだ自信がない人を後押しするワークショップ用のリポジトリー
124 stars 547 forks source link

OSS Gate Workshop: Tokyo: 2017-9-30: chiroruxx: fzaninotto/Faker : Work log #574

Closed chiroruxx closed 7 years ago

chiroruxx commented 7 years ago

This is a work log of a "OSS Gate workshop". "OSS Gate workshop" is an activity to increase OSS developers. Here's been discussed in Japanese. Thanks.

作業ログ作成時の説明

以下のテンプレートを埋めてタイトルに設定します。埋め方例はスクロールすると見えてきます。

OSS Gate Workshop: Tokyo: 2017-9-30: chiroruxx: fzaninotto/Faker

: Work log

タイトル例↓:

OSS Gate Workshop: Tokyo: 2017-01-16: kou: Rabbit: Work log

OSS Gateワークショップ関連情報

y-goto commented 7 years ago

よろしくです

chiroruxx commented 7 years ago

fakerで検索 すると韓国人が出てくる・・・・

chiroruxx commented 7 years ago

faker phpで検索 で検索するとGitHubページがヒットした。

chiroruxx commented 7 years ago

installationを発見

chiroruxx commented 7 years ago

とりあえず作業プロジェクト作ります・・・

chiroruxx commented 7 years ago

C:\Users\username\project\fakerTest 作った

chiroruxx commented 7 years ago

composer require fzaninotto/faker 実行します。

'composer' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。
chiroruxx commented 7 years ago

composer入れます・・・

chiroruxx commented 7 years ago

composerで検索したらページヒット。 https://getcomposer.org/

chiroruxx commented 7 years ago

トップページにダウンロードリンク発見。

https://getcomposer.org/download/

chiroruxx commented 7 years ago

Windowsインストーラーがあるので落として入れます。

chiroruxx commented 7 years ago

Developer mode のチェックボックスがある・・・ アンインストーラーがつかないみたいなので、外して進める。 (composerの開発者用ってこと?)

chiroruxx commented 7 years ago

phpの実行パスをきかれたので、調べて入力。

chiroruxx commented 7 years ago

php.iniの更新をしないと進められないみたい。 でも自動でやってくれるようす。

chiroruxx commented 7 years ago

エラー出た。

The "https://getcomposer.org/versions" file could not be downloaded: failed to open stream: 到達できないホストに対してソケット操作を実行しようとしました。
The "https://getcomposer.org/versions" file could not be downloaded: php_network_getaddresses: getaddrinfo failed: そのようなホストは不明です。
failed to open stream: php_network_getaddresses: getaddrinfo failed: そのようなホストは不明です。

ネットワーク途中で切れたみたい。

chiroruxx commented 7 years ago

リトライ。無事にcomposerをインストールできた様子。

chiroruxx commented 7 years ago

fakerのインストールに戻ります。

composer require fzaninotto/faker
chiroruxx commented 7 years ago
'composer' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。

composerの最後に再ログインしてねって書いてあったので、再ログインします。

chiroruxx commented 7 years ago

再チャレンジ。

composer require fzaninotto/faker
Using version ^1.7 for fzaninotto/faker
./composer.json has been created
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 1 install, 0 updates, 0 removals
  - Installing fzaninotto/faker (v1.7.1): Downloading (100%)
Writing lock file
Generating autoload files
chiroruxx commented 7 years ago

無事に動いた様子。

chiroruxx commented 7 years ago

Basic Usageがあるのでやってみます。

chiroruxx commented 7 years ago

以下の部分だけ変更して実行してみます。

require_once '/path/to/Faker/src/autoload.php';

require_once __DIR__ . '/vendor/fzaninotto/faker/src/autoload.php';
chiroruxx commented 7 years ago
<?php
// require the Faker autoloader
require_once __DIR__ . '/vendor/fzaninotto/faker/src/autoload.php';
// alternatively, use another PSR-0 compliant autoloader (like the Symfony2 ClassLoader for instance)

// use the factory to create a Faker\Generator instance
$faker = Faker\Factory::create();

// generate data by accessing properties
echo $faker->name;
// 'Lucy Cechtelar';
echo $faker->address;
// "426 Jordy Lodge
// Cartwrightshire, SC 88120-6700"
echo $faker->text;
// Dolores sit sint laboriosam dolorem culpa et autem. Beatae nam sunt fugit
// et sit et mollitia sed.
// Fuga deserunt tempora facere magni omnis. Omnis quia temporibus laudantium
// sit minima sint.

結果は

Ruth Feeney339 Anderson Manors
New Jamie, PA 04244Quos beatae atque quos voluptas saepe doloribus. Quae iste autem facilis quasi. Vitae facilis culpa nostrum et dolor. Anim
i dolor dolore ipsam officia ut sed.

いい感じ。

chiroruxx commented 7 years ago

BasicUsageの2個目も実行します。

<?php
// require the Faker autoloader
require_once __DIR__ . '/vendor/fzaninotto/faker/src/autoload.php';
// use the factory to create a Faker\Generator instance
$faker = Faker\Factory::create();

for ($i=0; $i < 10; $i++) {
    echo $faker->name, "\n";
}
// Adaline Reichel
// Dr. Santa Prosacco DVM
// Noemy Vandervort V
// Lexi O'Conner
// Gracie Weber
// Roscoe Johns
// Emmett Lebsack
// Keegan Thiel
// Wellington Koelpin II
// Ms. Karley Kiehn V

結果は

Miss Joanny Farrell I
Isaias Gottlieb
Jodie King MD
Jackeline Medhurst
Prof. Lura Yundt
Wilfred Bartell
Myra Hauck
Otto Cassin
Kaia Gulgowski
Mrs. Raquel Little

ランダムになってますね。

chiroruxx commented 7 years ago

別の人の作ったCLIコマンドもあるみたい。 https://github.com/bit3/faker-cli

chiroruxx commented 7 years ago

https://github.com/fzaninotto/Faker#modifiers

楽しそうなのでやってみる。

chiroruxx commented 7 years ago

サンプルコード動かすときに毎回

<?php
// require the Faker autoloader
require_once '/path/to/Faker/src/autoload.php';
// alternatively, use another PSR-0 compliant autoloader (like the Symfony2 ClassLoader for instance)

// use the factory to create a Faker\Generator instance
$faker = Faker\Factory::create();

を自分で補完しないといけないのが面倒・・・

chiroruxx commented 7 years ago

サンプルコードがPSR-2に則っていない気がする。ちょっと読みづらい。

chiroruxx commented 7 years ago

フィードバックポイントを自分でわかるようにまとめる。

chiroruxx commented 7 years ago

BasicUsageの2つ目のサンプルコードと、Modifiers以降のサンプルコードが、Fakerインスタンスを作成する部分が省略されているので、コピペしても動かない。 インスタンスを作成する部分も書いたほうが、実行しやすいと思う。 でも、今説明したい部分を強調するために、わざと外しているのかも。

chiroruxx commented 7 years ago

サンプルコードがPSR-1/PSR-2に則ってないので読みづらい。最近のコードは則って書いてあるものが多いので、則って書いてほしい。

例:

for ($i=0; $i < 10; $i++) {

to

for ($i = 0; $i < 10; $i++) {
chiroruxx commented 7 years ago

サンプルコードのやつ

コピペのやつ

chiroruxx commented 7 years ago

サンプルコードのやつは気のせいかも・・・(よく調べたらイコール前後のスペースについては言及されていなかった)

chiroruxx commented 7 years ago

BasicUsageの2番目のサンプルコードから、オートロードとFaker/Factoryインスタンスの生成が省略されている。 初心者にとっては気づかない場合があるので、2番目のサンプルコードの前に、「以降のサンプルコードではオートロードとFaker/Factoryインスタンスの生成については省略する」旨を書いてほしい。

chiroruxx commented 7 years ago

とりあえず英語に。

I think sample codes in readme.md is hard to understand for beginners. Because the code of auto loading and creating a Faker/Factory instance is omitted from 2nd sample code in Basic Usage.

So, this adds the sentence "After this sample code, they are omitted the code of auto loading and creating a Faker/Factory instance" before 2nd sample code.

chiroruxx commented 7 years ago

I think sample codes in readme.md is hard to understand for beginners. Because the code of auto loading and creating a Faker/Factory instance is omitted from 2nd sample code in Basic Usage.

So, this adds kinder sentence before 2nd sample code. "After this sample code, they are omitted the code of auto loading and creating a Faker/Factory instance" .

chiroruxx commented 7 years ago

issue だしました・・・!!

https://github.com/fzaninotto/Faker/issues/1311

piroor commented 7 years ago

コーディングスタイルが不統一なのはそれだけで問題と言えるので(「リーダブルコード」などでも言及されていますね)、特に何かルールが無い部分であっても、気にせず指摘していいと思います。

サンプルコードを変えずに説明文で対応するというのは、変更対象をやたらに広げてしまわず小さい範囲に留める方法として有効で良いと思います。 あとは、#573 へのコメントとも重なるのですが、「〜ということなので、こう実装(解決)してみました」というPRを間をおかずに出したり、あるいはPRするつもりであることを表明しておくと、プロジェクト運営者が安心しやすくて良いと思います。

knokmki612 commented 7 years ago

おつかれさまでした!いったんこちらのissueはクローズしますが、出したissueに変化があった時など、引き続きこちらに書いていくのもアリです!