SlideShare una empresa de Scribd logo
1 de 34
あなたもこれで即採用 !!
面接で必要な Perl の知識
@i47_rozary
perl beginners #9
自己紹介
経歴 :12,3 年 ? プログラマです。
Perl 大好き !
業務 : 最近は、マネジメントばかり。
( コード書いてない… orz=3)
30 人くらい。
スクラムとかやってる。
最近 :MBA 、 UI/UX 、 DAD とか勉強中。
早速…。
どうしたら
採用
されるのか !
本日、参加されている方だけに
特別に
お教えします !
後ほどボクの名刺をお渡しします。
面接の時に
持ってきてください…。
ふざけ
るなー !!
ごめんなさい、冗談です…。
目次
レベル 1: これは暗記しておけ
レベル 2: これは読んどけ
レベル 3: これは経験しておけ
レベル 1 これは暗記しておけ
1. お約束
2. データ構造 ( 配列 )
3. データ構造 ( 連想配列 )
4. サブルーチン ( 関数 )
5. リファレンス ( 参照 )
6.CPAN( モジュール置き場 )
レベル 1-1 お約束
# !/usr/bin/perl
use strict;
use warnings;
目隠ししても書けるように !!
レベル 1-2 データ構造 ( 配列 )
my @array = (1,2,3,4,5);
変数名の前にある "@" が配列の印
print $array[0]; #1
print $array[3]; #4
取り出すときの要素は 1 つなので
変数前に "$"
レベル 1-3 データ構造 ( 連想配列 )
my %hash = (1=>“one”,2=>“two”);
変数名の前にある "%" が配列の印
"=>" を使って、 key と value を対応づける。
print $hash{1}; #one
print $hash{2}; #two
取り出すときの要素は 1 つなので変数前に "$"
レベル 1-4 サブルーチン ( 関数 )
sub all_add {
# ごにょごにょ…
}
関数名の前にある "sub" が関数の印
my $total = &all_add(1,2,3,4);
使用するときは関数名の前に "&" を付ける。
レベル 1-5 リファレンス ( 参照 )
いわゆるポインタ。
my $ref_ary = @array;
my $total = &all_add($ref_ary);
print $total; #15
"@" の前にある "" が参照の印
"%" の前にも使える。
要素を一塊で扱える。
レベル 1-6 CPAN( モジュール群 )
http://search.cpan.org/
Perl の道具箱 ( なんと !123,186 個 )
要は…。
面接時に、
「 CPAN 、 CPAN 、 CPAN 、 CPAN 」
って言っておけばいいです。
同様に、
「 YAPC 、 YAPC 、 YAPC 」
も効果があります。
レベル 2 これは読んどけ
1. リャマ本
2. アルパカ本
3.CPAN モジュールガイド
4. モダン Perl 入門
5.Perl Testing Handbook
レベル 2-1 リャマ本
1 章 Perl 入門
2 章 スカラーデータ
3 章 リストと配列
4 章 サブルーチン
5 章 入出力
6 章 ハッシュ
7 章 正規表現の世界
8 章 正規表現によるマッチ
9 章 正規表現によるテキスト処理
10 章 さまざまな制御構造
などなど…。
488 ページ
さっき言ったことの半分
が詳しく書いてある。
レベル 2-2 アルパカ本
1 章 イントロダクション
2 章 中級者の基礎知識
3 章 モジュールの使い方
4 章 リファレンス入門
5 章 リファレンスとスコープ
6 章 複雑なデータ構造の操作
7 章 サブルーチンへのリファレンス
8 章 ファイルハンドルへのリファレンス
9 章 リファレンスを使った実践的なテクニック
10 章 大規模なプログラムの構築
などなど…。
328 ページ
残り半分が書いてある。
レベル 2-3 CPAN モジュールガイ
ド
1. ユーティリティ
2. データ
3. モジュール
4. クラス
5. 文字
6. 言語
7. 地域
8. 日付
9. 数学
10. アルゴリズム
などなど…
CPAN ハンドブック !
レベル 2-4 モダン Perl 入門
第 1 章 近代的なオブジェクト指向
第 2 章  Perl によるオブジェクトデザインパター
ン
第 3 章 データベース処理の薦め
第 4 章  Web アプリケーション
第 5 章  Perl によるシステムツールの開発
第 6 章 テストの薦め
第 7 章 パフォーマンスチューニング
第 8 章 知っておきたい C API と XS の書き方
第 9 章 押さえておきたい Perl の基礎
などなど…
344
OOP 、 XS 載ってます !
レベル 2-5 Perl Testing Handbook
- 前書き
- Test::More をもちいた基本的なテスト
- Test::Base::Less によるデータドリブンテスト
- モックとスタブ
- 日付 / 時刻にかんするテスト
- LWP::UserAgent のテスト
- fork() をともなうテスト
- PSGI のテスト
- TCP を利用するテストケース
- データベースとテスト
などなど…
Test 方法いっぱ
い
要は…。
好きな本は ? と聞かれたら。
CPAN モジュールガイドと
Perl Testing Handbook です。 ( キリッ
は効果があります。
レベル 3 これは経験しておけ
ウェブアプリケーション作成 ( 公開 )
1. フレームワーク
2. テンプレートエンジン
3.DBI or ORM
4.YAPC!
レベル 3-1 フレームワーク (WAF)
• Nephia
(https://github.com/ytnobody/Nephia)
• mojolicious
(http://mojolicio.us/)
• Amon2
(http://amon.64p.org/)
などなど…。
レベル 3-2 テンプレートエンジン
• Xslate
(http://xslate.org/)
• HTMLTemplate
(http://search.cpan.org/dist/HTML-Template/)
などなど… ?
レベル 3-3 DBI or ORM
• DBI
(http://search.cpan.org/~timb/DBI-
1.628/DBI.pm)
• DBIx:: で検索
Class とか Skinny とか。
Teng とか Sunny とか。
とはいえ…。
採用する側の人は、
Perl の技術だけを見ているわけではないです。
総合的に評価しています。
DB や Web サーバーの知識や
コミュニケーションの取り方 etc... 。
どんな人を望んでいるのか考えて、
そして、面接に望みましょう。
ちなみに…
採用する側の望みは、
プロジェクトをやり遂げる
チームであり、
そのメンバーです。
まとめ
望まれる能力を
吸収と経験し続ければ
面接なんて怖くない !
おまけ
事業部の人が言ってた。
望むエンジニアは…。
イケメ n…
おわり。

Más contenido relacionado

Similar a 20130725 perl beginners_9

~knitr+pandocではじめる~『R MarkdownでReproducible Research』
~knitr+pandocではじめる~『R MarkdownでReproducible Research』~knitr+pandocではじめる~『R MarkdownでReproducible Research』
~knitr+pandocではじめる~『R MarkdownでReproducible Research』Nagi Teramo
 
あなたが知らない リレーショナルモデル
あなたが知らない リレーショナルモデルあなたが知らない リレーショナルモデル
あなたが知らない リレーショナルモデルMikiya Okuno
 
今、最もイケてるPHPフレームワークLaravel4
今、最もイケてるPHPフレームワークLaravel4今、最もイケてるPHPフレームワークLaravel4
今、最もイケてるPHPフレームワークLaravel4leverages_event
 
Rによる高速処理 まだfor使ってるの?
Rによる高速処理 まだfor使ってるの?Rによる高速処理 まだfor使ってるの?
Rによる高速処理 まだfor使ってるの?jundoll
 
Why dont you_create_new_spark_jl
Why dont you_create_new_spark_jlWhy dont you_create_new_spark_jl
Why dont you_create_new_spark_jlShintaro Fukushima
 
Racc でおてがる構文解析
Racc でおてがる構文解析Racc でおてがる構文解析
Racc でおてがる構文解析morphine57
 
第一回Data mining勉強会 -第二章
第一回Data mining勉強会 -第二章第一回Data mining勉強会 -第二章
第一回Data mining勉強会 -第二章Tomonobu_Hirano
 
Start!! Ruby
Start!! RubyStart!! Ruby
Start!! Rubymitim
 
俺とDockerとtDiaryとkubernetes
俺とDockerとtDiaryとkubernetes俺とDockerとtDiaryとkubernetes
俺とDockerとtDiaryとkubernetesMasayuki KaToH
 
今さらながらRSpecに入門してみた
今さらながらRSpecに入門してみた今さらながらRSpecに入門してみた
今さらながらRSpecに入門してみたzaru sakuraba
 
Ruby on Rails 入門
Ruby on Rails 入門Ruby on Rails 入門
Ruby on Rails 入門Yasuko Ohba
 
Scala Daysに行ってみて
Scala Daysに行ってみてScala Daysに行ってみて
Scala Daysに行ってみてKota Mizushima
 
Scalaで萌える関数型プログラミング[1.1.RC1]
Scalaで萌える関数型プログラミング[1.1.RC1]Scalaで萌える関数型プログラミング[1.1.RC1]
Scalaで萌える関数型プログラミング[1.1.RC1]Ra Zon
 
Pry による repl 駆動開発について
Pry による repl 駆動開発についてPry による repl 駆動開発について
Pry による repl 駆動開発についてTomoya Kawanishi
 
第一回Data mining勉強会 -第二章 - 原案
第一回Data mining勉強会 -第二章 - 原案第一回Data mining勉強会 -第二章 - 原案
第一回Data mining勉強会 -第二章 - 原案yushin_hirano
 
ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発
ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発
ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発emasaka
 
Rユーザのためのspark入門
Rユーザのためのspark入門Rユーザのためのspark入門
Rユーザのためのspark入門Shintaro Fukushima
 
クイズ・Python勝ち抜きバトル pycon jp_2017
クイズ・Python勝ち抜きバトル pycon jp_2017クイズ・Python勝ち抜きバトル pycon jp_2017
クイズ・Python勝ち抜きバトル pycon jp_2017Motohiro Ueki
 
Rubyとプログラミング言語の潮流
Rubyとプログラミング言語の潮流Rubyとプログラミング言語の潮流
Rubyとプログラミング言語の潮流Kazuhiko Kato
 
Web技術勉強会 第33回
Web技術勉強会 第33回Web技術勉強会 第33回
Web技術勉強会 第33回龍一 田中
 

Similar a 20130725 perl beginners_9 (20)

~knitr+pandocではじめる~『R MarkdownでReproducible Research』
~knitr+pandocではじめる~『R MarkdownでReproducible Research』~knitr+pandocではじめる~『R MarkdownでReproducible Research』
~knitr+pandocではじめる~『R MarkdownでReproducible Research』
 
あなたが知らない リレーショナルモデル
あなたが知らない リレーショナルモデルあなたが知らない リレーショナルモデル
あなたが知らない リレーショナルモデル
 
今、最もイケてるPHPフレームワークLaravel4
今、最もイケてるPHPフレームワークLaravel4今、最もイケてるPHPフレームワークLaravel4
今、最もイケてるPHPフレームワークLaravel4
 
Rによる高速処理 まだfor使ってるの?
Rによる高速処理 まだfor使ってるの?Rによる高速処理 まだfor使ってるの?
Rによる高速処理 まだfor使ってるの?
 
Why dont you_create_new_spark_jl
Why dont you_create_new_spark_jlWhy dont you_create_new_spark_jl
Why dont you_create_new_spark_jl
 
Racc でおてがる構文解析
Racc でおてがる構文解析Racc でおてがる構文解析
Racc でおてがる構文解析
 
第一回Data mining勉強会 -第二章
第一回Data mining勉強会 -第二章第一回Data mining勉強会 -第二章
第一回Data mining勉強会 -第二章
 
Start!! Ruby
Start!! RubyStart!! Ruby
Start!! Ruby
 
俺とDockerとtDiaryとkubernetes
俺とDockerとtDiaryとkubernetes俺とDockerとtDiaryとkubernetes
俺とDockerとtDiaryとkubernetes
 
今さらながらRSpecに入門してみた
今さらながらRSpecに入門してみた今さらながらRSpecに入門してみた
今さらながらRSpecに入門してみた
 
Ruby on Rails 入門
Ruby on Rails 入門Ruby on Rails 入門
Ruby on Rails 入門
 
Scala Daysに行ってみて
Scala Daysに行ってみてScala Daysに行ってみて
Scala Daysに行ってみて
 
Scalaで萌える関数型プログラミング[1.1.RC1]
Scalaで萌える関数型プログラミング[1.1.RC1]Scalaで萌える関数型プログラミング[1.1.RC1]
Scalaで萌える関数型プログラミング[1.1.RC1]
 
Pry による repl 駆動開発について
Pry による repl 駆動開発についてPry による repl 駆動開発について
Pry による repl 駆動開発について
 
第一回Data mining勉強会 -第二章 - 原案
第一回Data mining勉強会 -第二章 - 原案第一回Data mining勉強会 -第二章 - 原案
第一回Data mining勉強会 -第二章 - 原案
 
ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発
ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発
ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発
 
Rユーザのためのspark入門
Rユーザのためのspark入門Rユーザのためのspark入門
Rユーザのためのspark入門
 
クイズ・Python勝ち抜きバトル pycon jp_2017
クイズ・Python勝ち抜きバトル pycon jp_2017クイズ・Python勝ち抜きバトル pycon jp_2017
クイズ・Python勝ち抜きバトル pycon jp_2017
 
Rubyとプログラミング言語の潮流
Rubyとプログラミング言語の潮流Rubyとプログラミング言語の潮流
Rubyとプログラミング言語の潮流
 
Web技術勉強会 第33回
Web技術勉強会 第33回Web技術勉強会 第33回
Web技術勉強会 第33回
 

Último

Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 

Último (9)

Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 

20130725 perl beginners_9