「Hello World」を含む日記 RSS

はてなキーワード: Hello Worldとは

2019-05-07

C++に再挑戦してる

大学時代C++が嫌いだった。

というより最初Hello Worldでつまずいてそこでやめてしまった。

「なんでstd::coutなんだ?printfじゃダメなのか?どうしてstdio.hを使わないんだ?」

とどっちも使えるという状態がとても気持ち悪くて、結局拡張子をcppとしただけのベターCを使うだけだった。

リーナス・トーバルズC++使わないって言ってるらしいぞ。やっぱりできる人はC言語なんだ」などとも考えていたような気がする。

あれから幾年か経った今になって、仕事の都合上C++に触れることになった。

もう長い間CやC++で書かれたより高レイヤー位置するプログラミング言語ばかり触ってきたので今更感があったが、今もう一度勉強し直す機会を得たと前向きに捉えてやってみることにした。

実際やってみると、なるほどstd::coutはフォーマット指定子に寄らない分便利だなと素直に受け入れられた。

他にもファイルの読み込みにはfopenじゃなくifstreamを使うとか、いろんなものC++用に書きやす方法があるのだと知り、それを素直に受け入れられた。

大学時代はその素直さがなかった。年月は俺に素直さを与えた。

2019-04-30

CでHello Worldした

2日目にして100万行のHello Worldテキストファイルに書き出して悦に入っている。

おれ天才かもしれん。

というより、最近PCすげーな。100万行書くのに1秒かかってない。

2019-04-23

チーム開発が苦手

スクラム開発が注目されて久しいが、そもそもチームでの開発が苦手。

はっきり言ってコミュニケーションをとりたくない。POSTだのPUTだのPATCHだの、そんなどうでもいいことで何日もあーだこーだ言いたくない。そんなんだったらサーバアプリも全部やるよ。もしくは、言われたとおりにやるから全部指定して。と思う。

みんなが意見を出し合って、最後民主的に決めましょうとかめんどくさい。独裁でもなんでも、動いてビジネス要件満たせればよかろうに。

ちゃん設計しないとで拡張性がない?私が今まで見てきた先人の遺物たちは拡張性がないままに拡張を続ける違法建築状態だったが、それでもビジネス要件ギリギリ満たしていたように思う(ビジネス要件遺物に合わせている気もしたが)。

ただ、こういうことを言っていいのは技術力が非常に高く一人で完璧製品を仕上げられるスーパーエンジニアだけであり、私のようなQiita記事鵜呑みにし、いつもHello Worldに毛の生えたプログラムを書いているへっぽこはあいまい笑顔を浮かべながら議論が終わるのを眺めているしかないのである

2019-04-11

C/C++/C#/Python/Swift/JavaScrip/Ruby/PHPって奴は使えないよね

よくプロフィール言語とかFWとかずらっと並べてる奴いるけど

いざ仕事やらせてみると驚くくらい使えない

Hello Worldできたら使える言語ってかんじになるのか?

逆にこういうの見るとこいつはできないやつなんだなってわかるのかもしれない

2019-04-05

クソ簡単プログラミング学習について書く

世間の「プログラミング習得」のハウツーマウントばっかりで腹立つから

俺も簡単に書く

 

何なんだよ

ね、簡単でしょ?じゃねーよ、お前ボブのお絵描き教室かよ

簡単じゃねーから今お前の文章読んでるんだよ

何でそんな酷いこと言うの?

 

プログラミングは難しい

 

何で難しいかって言えば、プログラミングが道具だから

RPGに例えるなら、呪文や道具がいっぱいある感じだ

用途に応じていっぱいあるんだ

全部覚えようと思って攻略本を開くと、目眩がするのは目に見えてる

途方も無くて死にたくなる

 

でもよく考えてみろ

道具なんだから目的を達成するために全部は使わないだろ

必要なだけ使えりゃ良いんだよ

 

だというのに世の中のハウツーはアレコレ覚えさせようとする

教科書の隅から隅まで覚えさせようとする

「これは基礎だから」「これは常識から」「覚えて初めて一人前だから」みたいなこと言ってくる

そんな量覚えられるわけねーだろ、3分で忘れる自信あるわ

100点取らなくていいの、解くべき問題が解ければそれでいいの、動けばいいの!!

みんなどうせ何だかんだ言ってその程度だから雰囲気でやってるから

 

つーかなんで何か作るって時に、いきなり教科書参考書を全部読もうとしてんだよ

お前、ひょっとしてゲームプレイする前に説明書攻略本読破するタイプ??

やめろよ、ちょっと引くよ

操作方法キャラ紹介、あとルールを飽きる程度読んどけば良いんだって

教科書なら最初の1/3くらい読んであー飽きたなーってところくらいでちょうどいい

 

そしたらまず取り掛かるんだよ

それで一番簡単呪文唱えてみろよ

やり方はネットのどっかに書いてるから自分で探せ

Hello World!!」

できたか?できたらお前はプログラマーに向いてるよ

あとは大体同じだから

 

そしたら次は何か作ってみるんだよ

練習から何でも良い

とか言ったら「SNS作ってみたいです」とか「3Dゲーム作ってみたいです」とか言い出すんだよな

お前、ひょっとしてゲーム開始直後に行っちゃいけないと言われたエリアに行って1回全滅しないと気が済まないタイプ??

 

まあ良いよそれでも

まず機能に分解して、その機能も分解していって、ゴミみたいな最低限の何かに分解してみればいい

文字が打てる!画像が表示できる!ボタンを配置する!

クソみたいな小さい機能に分解したら・・・その実装方法がわからないだろ?

そっから調べるんだよ、教科書でも参考書でもネットでも何でも

 

そっからクソ長い、一個の機能作るのにクソほど時間かかる

でもそういうもんだ、それを延々続けていったら・・・やがて詰む

そう簡単に完成しない、するわけない

この程度のことすらできねーのかって悲しくなる

でもそんなもんだ、残念ながらゲームみたいにお膳立てがされていない

ひょっとしたら不可能なのかもしれない、別の案が必要かもしれない

でもダメそうなら諦めろ

諦めて別のもの作ればいい

 

最後まで諦めず作りきる力」とかたまに聞くけど

Lv1時点でLv100の敵を倒そうとしても詰むだろ

まず見積もり力が皆無なんだから余裕で詰むんだよ

最後まで諦めず作りきれるって大事だよね」とか言ってる奴も、何度も作りきれず諦めてる下手くそ共だから

こだわるな、死ぬ

お前はその程度だ、皆もその程度だ

 

でも作ったり諦めたりするうちに、作れるものと作れないもの簡単ものと難しいものが薄っすら分かってくるから

そしたら「こういうのは作れそう」ってのが見えてくるんだよ

そのうち3回に1回くらい作りきれるようになるから

まあ調子乗って「皆の役に立つものを!」とか欲を出すとまた詰むんだけど

表に公開して話題になる人なんて、ベテランでも難しいから、そこを基準にするなよ

 

あとは繰り返してると、だんだんパーツを流用できそうだと分かってくるから

そしたら他人コード読んで見ればいい

パーツがいっぱいあるじゃん!とか、こいつめっちゃ上手くやってる!パクろう!ってなるから

そしたら今度他人コード理解するためにもう一段プログラムについて学びたくなるんだよ

 

まあ結局難しくて理解できないんだけどな

 

え、作りたいものがないって? うるせぇボケ!!

何でも良いから見つけろ

つまんねープロダクトに取り組むな、既にあるものでも良い、作ることに意味を見出せ、プログラムはただの道具だ

 

作りたいものが決まったら、自ずとそれに合う言語とかも決まってくる

最初から何でもやれるようになろうとするから死ぬんだよ

Linux生みの親も言ってるだろ、「ワタシハLinuxチョットデキル」(※言ってない)

2019-03-30

アニメ映画2019年シリーズ化作品を除く)

バースデーワンダーランド4月26日 

原作柏葉幸子『地下室からのふしぎな旅』

監督原恵一

代表作『クレヨンしんちゃん オトナ帝国の逆襲』『カラフル』『百日紅』)

脚本丸尾みほ

音楽富貴晴美

プロメア5月

監督今石洋之

(『天元突破グレンラガン』『キルラキル』)

脚本中島かずき

音楽澤野弘之

海獣の子供6月7日 

原作五十嵐大介

監督渡辺歩

(『のび太結婚前夜』 『おばあちゃんの思い出』『ドラえもん のび太の恐竜2006』)

音楽久石譲

『きみと、波にのれたら』6月21日 

監督湯浅政明

(『ピンポン THE ANIMATION』『四畳半神話大系』『夜明け告げるルーのうた』)

脚本吉田玲子

音楽大島ミチル

ドラゴンクエスト ユア・ストーリー8月2日 

原作堀井雄二

総監督山崎貴

(『ALWAYS 三丁目の夕日』『永遠の0』『STAND BY ME ドラえもん』)

監督八木竜一 花房真

脚本山崎貴

音楽すぎやまこういち

ニノ国』夏 

監督百瀬義行

(『ホーホケキョ となりの山田くん』(演出

ギブリーズ episode2』)

脚本日野晃博

音楽久石譲

『天気の子』夏 

監督新海誠

(『秒速5センチメートル』『言の葉の庭』『君の名は。』)

脚本新海誠

HELLO WORLD』秋 

監督伊藤智彦

(『ソードアート・オンライン』『僕だけがいない街』『劇場版 ソードアート・オンライン -オーディナル・スケール-』)

脚本:野﨑まど

(『正解するカド』)

HUMAN LOST人間失格2019年

原案太宰治人間失格』 

監督:木﨑文智

(『バジリスク甲賀忍法帖〜』『アフロサムライ』)



参考元:https://anond.hatelabo.jp/20190326114058

2019-03-20

Hello worldはあるのに

Goodbye worldはない

もっと世界と訣別すべき

2019-03-06

もうだめだ たすけてくれ

djangowebアプリherokuに突っ込んだけどデプロイ成功application errorで何もできなくなる

色々探して色々やったけど設定ファイルがぐちゃぐちゃになっただけ

herokuまで書いてあるチュートリアル通りに進めてみる

失敗

この辺でteratailで聞いてみる

そもそも何がわからないのかがわからないので答えがもらえるわけがなかった

俺にhello worldをさせてくれ……

2019-03-05

なぜ「Hello world」は誰が書いても高品質になるのか

品質ソフトウェアは変更が容易である

例としてこちらをご覧いただきたい。

/* Hello world */
#include <stdio.h>

int main(void) {
    printf("Hello, world!");
    return 0;
}

このコードは高品質である

理由は以下の通り。

  1. 設計シンプル
    何の分岐も判定もない。容易にC2カバレッジ100%にできるシンプルさ。
  2. 高凝集度、かつ低結合度
    変数を使っていないし、そもそも単一ブロック構成されているので結合のしようがない。
  3. 環境依存せず、移植性が高い
    標準ライブラリのみで構成されている。
  4. 適切に構造化されている
    そもそも構造と呼べる要素がない。
  5. 実行時エラーの恐れがない
    唯一、コンパイル時に検出できないのはprintf引数だが、例えここが"hellow world"になっていたとしてもプログラム問題なく実行できる。

2019-02-25

すべてをHello Worldまでしかやらないおっさん

新しいものが出るとキャッキャ言いながら

Hello World(若しくはインストール?)して終わってしまってるおっさんをよく見かけるんだけど

こういう人の技術力ってかなり怪しいんだけどどうなんだろ?

2019-02-16

自動化ツールの使い道

正確にはツールじゃなくてPythonポチポチ手打ちして作ってるのだけど。

Pythonライブラリマウスキーボード操作画像認識機能が使えるやつをつい最近知ったから何か作りたい

画像認識GoogleChromeアイコンを探してクリック → 新しいタブ追加ボタンクリック検索ウィンドウクリックHello World入力エンターみたいなことは出来るが、これを応用して何か作れないもんかと考えてみても全然何も思いつかん

プログラムガチ勢はどういうツール作ってんの?

2019-01-01

写経:スラスラ読めるExcelVBAふりがなプログラミング

「スラスラ読めるExcelVBAふりがなプログラミング」を写経してみた。

解説文を端から端まで読んでコード全部にふりがながついて読み下し文まで読んで実際にコード打ち込んでみた。

なんとなく理解していたことを文章として明記されるとしっかりとした理解になるような感じがした。

degub.print "Hello World!"

2018-12-24

anond:20181223182447

最近Visual Studio勉強用なら無料

https://visualstudio.microsoft.com/ja/

Visual Studioだって今は無料

簡単プログラム

printf("Hello world\n");

よく知られているやつ

簡単プログラム

今回の元となるコード for ループ

// ConsoleApplication2.cpp
//


int main()
{
	for (int i = 0; i < 8; i++)
	{
		printf("Hello 47\n");
	}
	getchar();
    return 0;
}

<は<の半角

実行結果

Hello 47
Hello 47
Hello 47
Hello 47
Hello 47
Hello 47
Hello 47
Hello 47

2018-12-23

anond:20181223205616

ほいよ

	char format[50];
	strcpy(format, "%0s%s");
	for (int i = 0; i < 8; i++) {
		printf(format,"","Hello world\n" );
		format[1]++;
	}

スペース増田なら こんなかんじか?

anond:20181223183225

初心者

class mystring
{
public:
	char *buffer;
	mystring() 
	{
		buffer = (char*)"";
	}

	void operator = (const char*t)
	{
		int len = strlen(t);
		buffer = new char[len + 47];
		strcpy(buffer, t);
	}

	void operator = (const mystring&src)
	{
		int len = strlen(src.buffer);
		buffer = new char[len + 47];
		strcpy(buffer, src.buffer);
	}

	mystring& operator + (const char*t)
	{
		int len = strlen(buffer);
		int len2 = strlen(t);
		char *buffer2 = new char[len + len2 + 47];
		strcpy(buffer2, buffer);
		strcpy(buffer2+len, t);
		buffer = buffer2;
		return *this;
	}
	mystring&  operator + (const mystring&src)
	{
		return ((*this) + src.buffer);
	}

};

	mystring my_space_org;
	for (int i = 0; i < 8; i++) {
		mystring space;
		space = my_space_org + " ";
		printf("%sHello world\n", space.buffer);
		my_space_org = space;
	}

anond:20181223182722

一気に並べてみる

オーソドックスな書きかた

int i;
int space;
for (int i = 0; i < 8; i++)
{
	for (space = 0; space < i; space++)
	{
		printf(" ");
	}
	printf("Hello world\n");

}

すまん <は半角の<に置き換えてくれ(w)

バッファをつかってループを1つ削る

	int i;
	int space;
	char buffer[8];
	char buffer2[8];
	memset(buffer, 0, 8);
	memset(buffer2, 0, 8);
	for (int i = 0; i < 8; i++)
	{
		memset(buffer, 0x20, i);
		printf("%sHello world\n",buffer);

	}

memsetも削ってみる

	int i;
	int space;
	char buffer[8];
	char buffer2[8];
	memset(buffer, 0, 8);
	memset(buffer2, 0, 8);
	for (int i = 0; i < 8; i++)
	{
		buffer[i] = 0x20;
		printf("%sHello world\n",buffer);

	}

この場合特に影響はないが一般的にはmemsetを使う使わないは大きな影響になるので

memsetを削る場合は注意が必要

C++を使ってみる

	std::string space;
	for (int i = 0; i < 8; i++) {
		printf("%sHello world\n", space.c_str());
		space += " ";
	}

C++を使ってみるの別回答

	std::string space_org;
	for (int i = 0; i < 8; i++) {
		std::string space = space_org + " ";
		printf("%sHello world\n", space.c_str());
		space_org = space;
	}

考察

ざつにかんがえても 書き方いろいろ 

それぞれメリット デメリットが有る

まり まぁ どれがいいというよりは

状況に応じてかき分けていく必要がある

学校の授業などだと

アルゴリズムの話で

ヒープソート マージソート クイックソート比較みたいな話があるけど

そこまで難しい話にいかなくても

ハローワールドだけ見てかつ雑に考えてもこのぐらいは

書き方がたくさんある

どれを書くか?どれがいいか? 考えると面白い

anond:20181223182447

	std::string space;
	for (int i = 0; i < 8; i++) {
		printf("%sHello world\n", space.c_str());
		space += " ";
	}

 ↑ C++的 な 書き方1

	std::string space_org;
	for (int i = 0; i < 8; i++) {
		std::string space = space_org + " ";
		printf("%sHello world\n", space.c_str());
		space_org = space;
	}

こっちの書き方のほうが 無駄は多いけど 使いやす

anond:20181223162005

	std::string space;
	for (int i = 0; i < 8; i++) {
		printf("%sHello world\n", space.c_str());
		space += " ";
	}

LT;は<

例外的

効率は悪いけど こういうふうな書き方もできるC++

anond:20181223152531

技としてはナイスだけど応用は厳しいよね

	const char *message = "        Hello world\n";

	for (int i = 0; i < 8; i++) {
		printf("%s", message + 8 - i);
	}

サンプルとしては、使いにくい書き方

ハローワールドループだけでも

結構遊べる

あなたは どんな 書き方が好き?

ゼロページ

	struct alignas(1) sample{
		char buffer[8];
		char buffer2[8];
	};
	sample sample;
	int i;
	int space;
	memset(sample.buffer, 0, 8);
	memset(sample.buffer2, 0, 8);
	for (int i = 0; i < 8; i++)
	{
		sample.buffer[i] = 0x20;
		printf("%sHello world\n", sample.buffer);

	}
アーカイブ ヘルプ
ログイン ユーザー登録
ようこそ ゲスト さん