注目キーワード
  1. ASMR
  2. VOD
  3. SEO

エンジニア転職オファーを目指して〜習得するプログラミング言語を考える

[ad]

こんにちは、わたきゅうです。

今回は新しく習得しようと思うプログラミング言語について書いていきたいと思います。

わたきゅうは未経験からエンジニアの転職オファーをもらうことを目標にしているため、

ニーズのある、ナウい言語の習得を企んでいるわけです。

さっそく、検索!

プログラミング 言語 イケてる
とか
プログラミング 言語 ナウい
で検索してみることに。
すでに検索KWがイケてねぇ……
と、いろいろサイトを物色しているうちに、ASCIIの記事でこんなグラフが。
※PYPL

………
……
よし、Pythonを習得するぞ!
というあまりにもあんまりな安直な理由で言語を選んだわたきゅうでした。
でも、なんでPythonで最近そんなに伸びてるの?と思ったので調べてみた。
伸びてる理由1.他の言語より書くコードの量が少ない
これは結構すばらしいことです。
なぜならエンジニア未経験のわたきゅうがプログラミングを勉強したい動機のひとつが、繰り返し作業・ルーチンワークを自動化して楽をしたいからです。
でも、繰り返し作業をわざわざコード書いて自動化、何時間も時間かけてたら本末転倒じゃね?
無駄じゃね?
てわけですね。だからコードを書くのが短いのはそれだけで効率がいいってことです。
こちらのサイトでpythonとC言語のおなじ処理をする場合のコードの長さを比較していたよ。
比較しているコードの内容は今いる自分のディレクトリ(デスクトップとかCドライヴのこと)から下層のディレクトリを探索して
、最下層までのディレクトリを表示してくれるプログラムです。
まぁ、簡単な例でいくと日本からわたきゅうのお家までの区分を表示するみたいな感じっす。(雑)
都道府県とか区をディレクトリとして、日本>東京>江戸川区>※見せられないよ
を表示してくれる的な
それがpythonだったこう↓

import os

def listFile(path, indentLevel):

print(‘ ‘ * indentLevel + ‘[‘ + path + ‘]’); # ディレクトリ名を表示

for fileName in os.listdir(path): # ディレクトリ内のファイルとディレクトリを全てループで確認

if(fileName.startswith(“.”)): continue

absFilePath = path + ‘/’ + fileName

if(os.path.isdir(absFilePath)):

listFile(absFilePath, indentLevel + 1) # ディレクトリだったので、そのディレクトリをチェックする

else:

print(‘ ‘ * indentLevel + “- ” + fileName) # ファイルだったので、ファイル名を表示

listFile(‘/python’, 0)

Cならこう↓

#include <stdio.h>

#include <unistd.h>

#include <dirent.h>

#include <sys/stat.h>

#include <string.h>

void printIndent(int indentLevel);

void listFile(char path[], int indentLevel);

int main(int argc, const char * argv[]) { // エントリーポイント(プログラムの起点)

listFile(“/python”, 0);

return 0;

}

void printIndent(int indentLevel){ // インデントのためのユーティリティ関数

int i;

for(i=0; i<indentLevel; i++){

printf(“ “);

}

}

void listFile(char dirPath[], int indentLevel){

DIR *dir;

struct dirent *dp;

int i=0;

struct stat stat_buf;

printIndent(indentLevel);

printf(“[%s]\n”, dirPath); // ディレクトリ名を表示

dir = opendir(dirPath);

for(i = 0; NULL != (dp=readdir(dir)); i++){ // ディレクトリ内のファイルとディレクトリを全て確認

const char* fileName = dp->d_name;

if(‘.’ == fileName[0]) continue;

char cp[512];

strcpy(cp, dirPath);

strcat(cp, “/”);

strcat(cp, fileName);

stat(cp, &stat_buf);

if(S_ISDIR(stat_buf.st_mode)){

listFile(cp, indentLevel + 1); // ディレクトリだったので、そのディレクトリをチェックする

}else{

printIndent(indentLevel);

printf(“- %s\n”, fileName); // ファイルだったので、ファイル名を表示

}

}

closedir(dir);

}

まじでpythonからもっと早くてつけるべきだった…
伸びてる理由2.汎用性が高い&機会学習で使われる
pythonは機会学習にもっとも一般的に使われている言語で、YoutubeやDropbox、インスタなどで使われています。
Youtubeの関連動画とかおすすめ動画の紹介機能も機会学習をつかってますぜ。
こういうユーザーの好みを判別してサジェストするみたいな機能は今時のサービスだったら当たり前ですね。
というわけでわたきゅうはpythonを学ぶことにしました。
にほんブログ村 小遣いブログへ
にほんブログ村