「文字コード」を含む日記 RSS

はてなキーワード: 文字コードとは

2020-07-30

anond:20200730111114

L"文字コードで今までの試験全部は気はつらいぉ 全部UCS2でやっちゃったぉ?"w

2020-07-27

anond:20200727183826

部首順なの!まさに誰得

文字コードによって扱いが違うのにも驚き。

2020-07-11

プログラミングの神物語

俺の独断偏見で(主にWeb系)プログラミングにまつわる神を感じるものを挙げる。

まずDocker。これがない頃はパソコンの中の開発環境はグチャグチャで、特にライブラリ依存関係管理がとてもしんどかった。今はDockerのおかげでいくつも開発環境を持てる様になったんでマジ便利。作った人は神に違いない。

次にオブジェクト指向。これがない頃からプログラミングしてた訳じゃないけど、プログラミング始めたての頃に取り組んで訳分からなくて放置して、手続き型のプログラムをそこそこ書いた後でオブジェクト指向に戻ってくると何これ!データ手続きをひとまとめにできる!めっちゃ便利やん!ってなった。アルゴリズムデータ構造っていうのはそんなタイトル教科書があるくらいにひと続きのものからこうなるのは必然かもしれないけれど、その必然を形にした人は神の様な目を持っていたのだろう。

そしてGit。これセーブポイントが作れるだけでしょ、なんて思ってたけど、GitHubと連携させて複数人ひとつプログラムをいじり始めると途端に神ツールと化す。それにセーブポイントが作れるだけでも十分に神だった。

あとUTF-8Shift-JISやらEUC-JPやらが混在していた世界は端的に言って地獄だったのに、こいつのおかげで文字コード基本的に気にすることがなくなった。神。

他にもいろいろあると思うけど、俺としてはこれらに頭抜けて神を感じる。

2020-07-10

海外のガキと喧嘩のすゝめ

ハローエブリワンこんにちは大学中退引きこもりニートです!

徹夜明けでだいぶハイになってる状態で書いてるぜ!例のゲームにハマりすぎてが理由徹夜だぜ!

鬼の睡眠12時間をしてた頃に比べれば多少脳がすっきりしている気分だぜ!

前置きはこの辺で閑話休題(使ってみたかった)

ストレスの溜まってるそこの君!是非ともRobloxでキッズ喧嘩して発散することを勧めるなのぜ!(CV:ゆっくりまりさ)

英語が苦手で出来るかどうか不安」「そもそも喧嘩ってどうやって吹っかければいいんだ?」そんなことはさっぱり忘れろ!

とりあえず俺の体験談を聞いてくれ!

Case1:ロシア人のクソガキ破壊妨害日和

ある日のこと、俺は初心者狩り狩りをしていた。初心者狩りx2というのは、初期にもらえる無料の車を乗り回して攻撃的なキッズを集めることだ。

そんな俺の罠に引っかかった哀れなロシア人ガキ。彼はクソデカとまではいかないが、中級戦車で踏みつぶしてきた。

俺はすぐさま、ローラー車(Fallout76のブレア山に出てくる掘削機が付いたような車)に乗り換え、反撃開始。

彼の戦車をひとたまりもなく潰すことが出来るのだが、やらない。なぜかって?不動状態にする方が相手ダメージがでかいのだ。

車は廃車工場に持っていくことでもマネーを稼げるのだが、そこまで辿り着けない状態で、なおかつ完全に相手破壊されないとなると、リスポーンするしかなくなる。

それを繰り返していたのが効いたのか、彼はPVPオフにしやがった。戦いから降りたのである。だがそこで攻撃を止めるつもりはない。

廃車工場は、ちょっとした操作ができるレバーのような物があり、破壊機械を止めたりも出来る。私はそこに着目した。

レバー荒らしまくって、機械ストップさせた。それも十回も二十回も...。彼はお得意のキリル文字を使って私を煽っているつもりなんだろうが、効果は無い。

な ぜ な ら 読 め な い(均等割り付け)からである。彼は私に「stop troll」と送り姿を消した。あーあ。

Case2:怖すぎる!?鬼の乗車恐がりアメ公幼女

ある日のこと、おれは前述した狩り狩りをしていた。そこへぶつかってきたバカガキ。「しめしめ...」と思いながらID確認したら、

「PrettyPonny47」みたいなIDだった。「え!?女?!」俺は少し女に対して恨みはあるものの、攻撃するのはかわいそうだと思っていた。

しかし、攻撃してきたからにはしなければならない(使命感)私は一旦アバターを変えに行った。

[!Success chance!]アバターは怖いものにした方が良い!

私はなけなしの貯金を崩して大雨のなか、iTunesカードを買いに行った(クレカは滞納のため親に取り上げられた)

なぜなら、私はそれまで割とかわいい系(ピンクうさぎちゃんイメージしてアバターを作っていた)でまとめていたのだが、黒と白のモノトーンで揃えることにした。

顔に道化師ピエロじゃない方)のマスクを被り、アディダスジャージ上下。手にはナイフ。後ろには幽霊コスチュームを着飾って。

例のごとく、彼女PVPオフにしたので、私は彼女の車に乗り込むことにした。彼女は本気で怖がっていたのだろう。私が乗り込んだ瞬間車を消した。

これもまた回数を重ねるごとに、彼女は「y ar scary」と繰り返すようになった。狙い通りである。そして私は追い打ちをかけるように次のことをした。

[!Success chance!]キリル文字文字化けを使いこなせ!

はちまちま、文字化け辞書登録して、キリル文字キーボードを追加した。

先ほどのロシア人喧嘩した時に思いついたのだ。「なんかキリル文字怖い」と。そして文字化け

青空文庫の「学問のすすめ」を色んな文字コードで試して何種類か用意した。それを連投、連投、連投....。

「Ээреэджо」「峨★縲阪→險?縺医j」そんなチャットで埋め尽くされるもんだから怖いのなんの。彼女は「I reported u」と残して去って行った。

[!Success chance!]Robloxの運営は働かない!?

マジです。大マジです。私も初心者の頃はよく初心者狩りをされたので、何回も律儀に英語を書いて通報したのですが、BANされることはなく。

そして友達に聞いたところ、BANといっても一回ログアウトさせられるだけで、再ログインすれば何事もない。ということらしい。

俺がヒャッハーしてトロールしてるのはそれが理由ですね。まぁBANされてもアカウント作り直せばいいだけだもん!

ちなみにRobloxのアバターストアには大量の服があるのだが(ユーザー作成して売り出せる)有名な高級ブランドロゴがあしらわれた服や、あきらかにネットで拾ってきたであろうhentai画像プリントされたTシャツなどが販売されているので、法律的大丈夫なのかと。

まぁ企業宣伝になるしね(よくある漫画村賛成派の意見の真似)

Case3:子供ミッションが大好き!総まとめ戦

ある日のこと、おれは(略)

だが、俺のヤバすぎる見た目を察したのか、誰も攻撃してこない。クソ-こうなったらこっちから攻撃だ!

チャットを眺めていて、洋ショタ3人がGTAミッションのようなことをしていた。トラック指定場所まで敵の攻撃に耐え破壊されないように運べ!的なやつ

私はウキウキしながら60Tの超絶激早ロケットカーで出向いた(ちなみにマネーカンストしたのでやることがなくなった)

彼らの車の群に「gotcha!」とぶつけてロケランで相手方の車を撃破ー(CV:スリッピー

見事に彼らは攻撃態勢。俺はいくぜと3vs1の状態に。最初はやられ続けで「lol」「y r noob」と繰り返されたのだが、そこは巨根殺る気ブチコロス子(CV:井脇ノブ子

まず、前述したクソデカ掘削機を用意して、初期リス位置ローラー。一転して面白いようにやられる彼ら、すっきりする僕の構図に。

だが、彼らも手強かった。少しずつ俺にダメージを喰らえ、あらゆる方向からぶつけてきた。俺はこのままではまずいと思った。

そこに救世主。他に攻撃してこない海外のガキが俺にチャットを送ってきた。

le epic,I have all the passes for this game」俺はすぐさま「Good!」「Do me a favor」「Mission:Destroy ○○'s car」と送った。

彼は「k」と返し、私に従ってクソガキ3人の車を破壊し尽くしてくれた。例のごとくPVPオフ。だが止めない止められない。

yo N.O.O.B」「y r underdog」「Heeeeey!!」と繰り返した。クラクションを鳴らしまくり、チャット煽りまくりストーカーしまくり、妨害しまくり。

「I scared y」「Sorry」と2人のガキは言ってきた。しかし、1人のガキがあろうことか

「He peep his pants」と送ってきやがった。私は激怒した。何を隠そう、私は朝、ケツを掻きながらくしゃみをしたら漏らしたのである

私は震える怒りをおさめながらnoobを繰り返し、「I'm so tired bcs y r so nooooob」「bye👋」と書き切断した。まぁ引き分けってことで。

いかがでしたでしょうか?(CV:ゴミを増やし続けるアフィブロガーの声)

...私は満足してドビュッシーの月の光を弾きながら赤マルをふかした。イマラチオされたがりのドMホモだと思いきや、子供相手だとサディストになれるのか...等など思いを馳ながら。

前回の日記anond:20200704175351)に30ブクマも付いたことが嬉しくて親に報告したら、「もっと建設的な~」と言われた。なーにが建設的だ。ごめん同窓会には行けんわ、って言うような男に育てるつもりだったのかワシを。

しかしながらさすがに飽きてきた。もっと別のゲームがしたい。そして見つけた新たな新天地。Adopt me!という動物を育てるゲームがあるのだが、聞くところによると日本人外国人リア充児童達が遊んでいるようなのである

「うわ~~~こりゃまた忙しくなるぞ~~~」そう思いながら、今この文章を書いている次第でございますいかがでしたでしょうか?

2020-06-03

anond:20200601092419

所詮言葉なんで、覚えるしかないよな。

個人的には、日本にはせっかく「ルビ」という文化があるので、熟語は「ルビ」を振って常用外の漢字を使えるようにして欲しい。

文字コードにも、Interlinear Annotations というルビをつける制御信号があるので、これを使えばいいのに、と思う。

というか、これを使った Twitter クライアントを遊びで作ったが、本家採用してくれんかねぇ。

語い→「かたらい」、辛らつ→「つららつ」?、色々突っ込みたいのは多々あるけど、常用漢字以外は開かなければいけない派は消えてしまえばいいのにとは思う。

2020-05-29

anond:20200529010722

他社や他PCに持ち出せないのを承知文字コードの未定義空間絵文字とか難読漢字とかを突っ込んで使うことが昔はよく行われていた

2020-05-04

anond:20180206201316

マジレスすると、昔は1バイト文字と2バイト文字が混在していると文字化けしたり不具合を起こすことが多くその予防策で全角で統一されることが多かった。

また、「バイト数=文字数×2」と単純に考えられるメリットもあった(固定長バイトデータで保存するようなシステム特に)。

はいろんなシステム成熟し、内部文字コードがUnicodeが使われることが主流になったので、各国のどんな言語が混じっていても大体問題なく動作するので、気にする必要はないのだが、悪き習慣が続いている老舗開発ベンダーとかではこの仕様を未だに続けていたりする。

2020-05-02

[]2020年4月はてブあとで読むトップ30リスト

はてブホットエントリ(総合)で月内に数多く[あとで読む]タグを集めたエントリ

202あとで/2672users ブログ: 「平常に戻る」ことはない - イギリスNESTA(科学技術芸術国家基金)より | okuranagaimo.blogspot.com

144あとで/741users 電子情報学特論:Chromiumアーキテクチャを解き明かす - Google スライド

142あとで/2292users 0403「NY感染体験記(未確定)」|qanta|note

132あとで/1569users イラスト図解! これが新型コロナウイルスSARS-CoV-2)だ|ぬまがさワタリnote

124あとで/1229users [PDF]COVID-19への対策概念 | 東北大学大学院医学研究科・押谷仁

116あとで/578users API 設計ガイド  |  Cloud API  |  Google Cloud

116あとで/1677users 緊急事態宣言から3週間 流行状況はどう変わったか(忽那賢志) - 個人 - Yahoo!ニュース

114あとで/911users 米ジャズプレーヤーが解き明かす“J-POP”の正体、音楽アイデンティティKAI-YOU Premium)

114あとで/609users Google Cloud Platform のトレーニングコースハンズオンを 1 か月間無料提供 | Google Cloud Blog

111あとで/506users ドキュメント作成スキル向上を目指す人向けおすすめ記事まとめ - Qiita

106あとで/970users 月例マグコミマンガ大賞2020 - マッグガーデン / 2月期 入選「賢者教室」朝野茶柱 | MAGCOMI

104あとで/668users 論文の読み方 / How to survey - Speaker Deck

103あとで/617users SPAログイン認証ベストプラクティスがわからなかったのでわりと網羅的に研究してみた〜JWT or Session どっち?〜 - Qiita

102あとで/452users Git / GitHub使用したチーム開発時のガイドラインを制定しました | Developers.IO

102あとで/1032users 「日本人幻想を抱く」新型コロナと闘うウイルス学者の『情熱大陸』のドキュメントがすごい!(追記あり)(水島宏明) - 個人 - Yahoo!ニュース

100あとで/549users Mr. ベイエリア on Twitter: "自分機械学習を学びたい全ての人類に(CourseraのAndrew Ngコースをやった後に)Andrew NgStanfordのCS229の講義を見ることをオススメしてるんですけど、その講義2018年バージョンが公開され… https://t.co/OUokFft3ea"

97あとで/600users 自宅で学ぼう!AWS学者向けの勉強方法 6ステップ! | Amazon Web Services ブログ

96あとで/435users 文字コード再入門 ─ Unicodeでのサロゲートペア、結合文字正規化書記クラスタ理解しよう! - エンジニアHub|若手Webエンジニアキャリアを考える!

95あとで/406users “アカウント作成後すぐやるセキュリティ対策” 編を公開しました!- Monthly AWS Hands-on for Beginners 2020年4月号 | Amazon Web Services ブログ

94あとで/538users 大幅にリニューアルされた Next.jsチュートリアルをどこよりも早く全編和訳しました - Qiita

94あとで/1004users 「一生役に立つ」人に質問するときに覚えておきたい…とある大学の授業で配られた『質問の仕方』のスライド - Togetter

93あとで/1447users ヨーロッパコロナ感染して入院した話 - にゃんぶろ

93あとで/782users これからは「一番最初に思い出してもらえるブランドしか生き残れない|池田紀行@トライバルnote

92あとで/2071users 一人暮らし新型コロナウイルスにかかった話|ROnote

88あとで/794users 見ずして死ねない日本の伝統建築10

87あとで/1317users リモートワークが 超快適になる製品9選 〜仕事に本気なあなたに〜|村上僚|note

86あとで/425users 「AIをどう習得したのか教えて」と大募集し、技術から集まった記事49本を紹介 - 週末スペシャル日経クロステック Active

86あとで/809users API 設計: gRPC、OpenAPIREST概要と、それらを使用するタイミング理解する | Google Cloud Blog

86あとで/778users Gitでよく使用するコマンドGIFアニメ解説 | コリス

85あとで/395users TypeScript 練習問題集 · GitHub

85あとで/2211users コロナの影響でスーパーで買うカツオ刺身が美味すぎる。|すずきまことnote

[あとで読む]タグの減少が更に進んだ。COVID-19の闘病記がタグを集めた。

2020-04-16

anond:20200416061359

かなり面倒だが、できるにはできた。pandocは不要希ガス

2020-04-03

pythonでのメール受信コード自作

imapclient使う

もともと外人さんが書いた本の翻訳なので、たぶん、サブジェクトフィールド日本語が来てるとダメっぽい。というか昔はサブジェクトでの日本語使用禁止だった記憶あるが。いつのまにOKになった? 「日本語 文字コード 判定」で調査しなきゃ。文字コード判定に手間取って使い物になるコードが書けなさそ。どうなんだろう?すなおにCygwin+Muttか?

2020-03-29

日曜日です。作業的には新しいNASを取り付けるだけです、あとはネット越しで状況が見れるのでファイルを新しいNASコピーすればOKです。

だいたい10MB/sスピードが出てるので、コピー終わるのが25時間ぐらいかかる予定です。マジかよ!?って思うんですが、明日の始業時間には間に合わないので今日は1日まわして、明日以降は夜にまたじわじわコピーして戻していきます

その間の差分も発生するので1週間ぐらいで新しいNASに切り替えられると思います

古いバックアップソフトを使っていたので4GB以上のファイルファイル名がUnicodeだとコピー対象から外れていたので、マスター側とバックアップ側でファイル数と容量が合致しないのでどうしてかなと思ったら、そう言うことでした。

それらを修正対応された新しいバージョンバックアップソフトにも刷新したので、もうファイル数と容量は合致します。

なんか人類文字コードから解放されたとばかり思っていたのに、ファイル名にも文字コードがあるんですね、というかファイル名の文字コードのそう言う宣言ってどこでされてるの?って思います

今日もいくつか増田を書きましたが、ブクマトラバがつきませんでした。

設置だけなので今日はもう帰ります

また明日よろしくお願いします。

2019-11-04

前任者のコードVBA

USBメモリパスが変わるのに対応する

FGHIがあるか調べる

→Dのときもある。ソースを直すのが面倒なのでDをFに変えて実行。

ファイル出力の方法が分からなかったらしい

shellでメモ帳を起動して、コピペ名前を付けて保存をsendkeysで送る。

マクロ実行中にマウス触ったらエラーになった。windows10メモ帳文字コードがUTF8にかわってえらい目にあった。

・ACCESS1件更新するのに1分かかる

全件selectしてキーが一致したら更新更新しても最後まで回す。

→時々古いデータを消すように言われた。

・VBmodlessを知らない

何かするとフォームを消すようになっている

フォーム表示ボタンはいっぱいある

変数セルに入れる

デバッグウインドウとかイミディエイトとか多分知らない

→実行後も残る究極のグローバ変数

配列を並び替える

配列はワークシートにあるからrank関数index関数で別のワークシート領域に並び替え後のリストを作る。

→処理速度は早い

2019-07-20

anond:20190720225244

マジレスすると、Pythonではソースコード文字コードutf-8にできるから、本当は漢字変数名扱えるぞ。

みんなやらないだけで。

https://qiita.com/yukinoi/items/e521e8f6b085a51de90b

Javaでもできるはず。というか、最近ソースコードutf-8対応言語は、みんなできるはず。

2019-07-09

anond:20190708235123

文字コードまわりが原因だったら、CSVじゃなく.xlsに保存し直したのを差し込んで確認してみるとか?

また、ドキュメントBの中身を全部メモ帳かにコピペして文字化けが起こらないかどうか。

枠線など、デフォルト効果有効になりがちな透明効果プリンタ負担が大きくなってないか

あるいは、ドキュメントBのすべて標準スタイルに変更→フォント全て(欧文含む)MSゴシックに変更してもプリントできないのかどうか。

プリントも、Wordから直接プリントするのではなく、一度PDFに書き出してみれば、特定のページで駄目になったりしないかどうか確認できる。

WordPDF書き出しではなく、X-1a形式PDFに書き出せるソフトを使えば透明効果排除できるので、プリントの確実性が増すから試す価値はある。

https://search.vector.co.jp/vsearch/vsearch.php?key=pdf%2Fx-1a 

2019-07-01

anond:20190701192421

BSD似非Linuxとして使うんじゃなくて正真正銘LinuxデスクトップLinuxという地獄の外から使えるなら、大分マシになるだろうよ

タダまぁ、日本語圏の人は文字コードという新たな地獄に片足突っ込む覚悟必要だが。

windows10日本語ロケールsjisからUTF8に設定可能になってしばらく経つが、人柱の噂は全く聞かんなぁ

2019-04-12

anond:20190411215811

プログラミングができるわけでもない一般人だが書かれている内容はだいたい分かった。

ただし何を言いたいのかはサッパリからない。

なぜ「数字」にこだわるのかも分からないし唐突に現れたサンプルプログラム意図が分からない。

ドレミファソラシは「261、293、329、349、391、440、493」

単位ヘルツが抜けていて分かりづらい。

可視光の波長

コンピュータディスプレイは波長ではなくRGB表現されるので分かりづらい。

電気がそれほど流れてないときは白色に光り、たくさん流れているとき赤色に光るLEDがあるとする。

そんなよく分からないLEDを使わずともフルカラーLEDがある。

たとえにマイナー電子部品(?)が登場すると逆に分かりづらい。

それから縦30x横30のLEDから縦70x横70のLEDまでに内接する円の内部(x^2+y^2≦40)がすべて色001であれば、赤い円ができる。

このあたりはよく分からない。

中心座標(50,50)から距離(20)ではないのか?

(「点と円の当たり判定」を各座標ごとに実行)

めちゃくちゃ強い電気

なんかすごそう(小並感)。

ハイレベルとローレベルでなくアナログ値になるということなのだろうか?

その意図が分からない。

コンピュータ内部では数字で何もかもを表現する。

それはたぶん現代人ならみんな知ってると思う。

(ただし数字というよりはビットが基本だが)

「Aは41と表現する」のように人間が決めた

どの文字コードのことを言っているのか分からないので集中できない。

(ためしASCIIコードを調べてみたがAは65だった。また小文字にするとき足す値は32)

かなりシンプルになることが多い。

このサンプルコードは言うほどシンプルだろうか?

一般的には適当なrandomモジュールのようなものを利用するのではないか

(ついでに実用的かを考えるなら曲数が60以上あったときのことが気になる)

今の仕事でも、既存マクロエラー出たときに原因箇所を調べたりするのは出来るけど、そこから何を直したら直るのかわかんない。

欲しいマクロ機能要望とかフローチャートとかは作れるけど、それがプログラムにならない。

フローチャートを作れるのなら元増田必要なのはポケットリファレンス」とか「逆引き~」とかいう類の本ではないだろうか?

(普通に考えればさすがに知っているだろうが念のため)

2019-04-04

こうすればプログラミング覚えられるよ【随時追記

プログラマじゃないけどプログラミング完全に理解した()おばさんが理解してる基礎知識書くよ。

追記 この文章プログラミング勉強をしたいけどその周辺にある基礎知識になかなか触れる機会がない人向けに書きました。これらの基礎知識があると、困ったときに調べ方すら分からないという状況は回避やすくなるはず)

まずLinuxUnix系OSの使い方。

ターミナル、いわゆる黒い窓からCUIコマンドユーザーインターフェース)でコンピュータを使う方法を覚えよう。これは大学コンピュータリテラシーで習った。MacOSXで復習すると捗った。(追記 すごく間が抜けてたけどMacOSXUnix系OSです)

まずはファイル操作Macターミナルを使って、cd Desktopって打ってからecho ohayou > aisatsu.txtって打ってみて、cat aisatsu.txtってやる。そうすると何が表示されるのか?とりあえずやってみよう。ここで>は増田の都合上大文字全角にしてるけど、ちゃんと半角にしてね。なんで増田の都合上半角がダメなのか、そのうち想像できるようになろう。(追記 ブコメ指摘感謝

そして、実際にデスクトップを見に行ってみると、aisatsu.txtってファイルがあるはずなんで、開いてみよう。これで何が起こったのか7割くらいはわかるはず。

こういうファイル操作の基本をまず覚えよう。これこそ空気みたいなものから

追記 ここも間が抜けてたけど確かにhogeって何かわからいね。直しました)

次に文字コードバックスラッシュの話。

最近は何も考えなければ文字コードはとりあえずUTF-8でなんとでもなるようになってるけど、バックスラッシュとかは環境設定で出てくるように設定しないと出てこないし、その意味合い、つまりエスケープとしての使い方を頭に入れておくと後々困らないと思う。あとEOF(エンドオブファイル)とか改行コードとかもそういうものがあるよ程度には覚えておこう。これ頭の片隅にはいってないと分からん殺し的な罠にはまることがある。

次にプログラミング環境の構築の仕方。

これは使いたいプログラミング言語公式サイトに行くと大抵書いてある。

でもMacだとだいぶ楽。とりあえずターミナルからgccって打ってみるとなんかCUIツールとか書いてあるものインストールしろって言われるのでインストールする。これだけでCとかC++とかRubyとかPythonとか一通り使えるようになる。もしかしたら最近はこのインストールすらいらないかもしれないけど。

あと、シェルコマンドとかプログラミング言語を実際に使うときはいろんなライブラリインストールする必要があるけど、そのライブラリ管理がすごく面倒なので管理をまとめてくれるコマンドがあったりする。aptとかhomebrewとかがそういうのだから、そんなものの使い方も覚えておこう。

追記 言語文法を追うだけなら環境構築なんてしなくてCloud9とか使ってもいいかもだけど、プロダクトを作ろうとした時にはまだまだ手元で環境作って必要ライブラリを入れてとやった方が後々応用がきくと思うのですよ。それにそうしていくとDockerの有り難みなんかも理解できるようになっていくのではと思います

最初勉強するプログラミング言語は、Javaだけはやめておけ。

なんでかっていうと、Javaオブジェクト指向言語ってやつなんだけどオブジェクト指向的にしか書けないから。古い人間だと言われそうだけど、最初手続き型言語から始めるべきだと思ってる。少なくとも、手続き型的に書ける言語から始めるべき。

なぜそう思うのかも含めて、とりあえずおばさんが理解しているプログラミング言語の発展の経緯を軽く解説する。

最初の頃のプログラミング言語は、手続き型と呼ばれるものが多かった。

この〇〇型ってのはプログラミングをするときの考え方によって名前がついているんだけど、手続き型はまず0を作って、0に1を100回足して、最後にその結果を表示してください、みたいな、上から書いた順番通りに動くのが基本のルールである考え方。プログラムは基本的にはこうやってデータアルゴリズムを使って変化させていって望む結果を得ている。でもこのやり方は問題も多かった。プログラム全体がひとかたまりになってしまっているので、数千行とかになるともう普通の人では手がつけられないし、人間ミスデータを間違って扱ってしまうことがバグの温床になった。

なので、この手続き型の考えに構造化という考えが加わって、関数というものが生まれた。関数っていうのは料理レシピに例えるとわかりやすいかも。

関数が無い状態だと、

1:玉ねぎをくし状に切ります

2:キャベツをざく切りにします。

3:豚こまに塩胡椒で味付けをします。

4:フライパンを火にかけ、油を入れて熱します。

5:豚こまを入れて色が変わるまで炒めます

6:玉ねぎを入れます

7:キャベツを入れます

8:野菜がしんなりするまで炒めます

9:火を消して8をお皿に盛り、野菜炒めの出来上がりです。

と書いていたものが、関数がある状態だと、

A:野菜を切ります

Aのやり方1:玉ねぎをくし状に切ります

Aのやり方2:キャベツをざく切りにします。

B:肉に味付けをします。

Bのやり方1:豚こまに塩胡椒を振ります

1:フライパンを火にかけ、油を入れて熱します。

2:Bを入れて色が変わるまで炒めます

3:Aを入れてしんなりするまで炒めます

4:火を消して3をお皿に盛り、野菜炒めの出来上がりです。

って書ける。ここではAとBが関数

この程度だとあまり意味を感じないかもしれないけど、これがもっと複雑なもの想像してみると、なんとなくありがたみが分かって来ないだろうか?こうすると、多人数でプログラミングをするときに、Aを書く人、Bを書く人、1〜4にまとめる人って感じで作業分担ができる。それに、バグが起きた時もAの領域バグったのか、Bの領域バグったのかとか、全体にまとめると上手くいかないのかとか、原因の切り分けがやすい。

でも、プログラムがとっても複雑化すると、これでも手に負えなくなる。料理の例えを拡大すると、料理店を運営することを考えるといいかも。

料理店でたくさんの料理をさばくときに、レシピを完全に1から作ることってないと思う。Aさんが野菜の仕込み担当、Bさんがスープの仕込み担当、というように各人に仕事が割り振られているはず。AさんもBさんもそれぞれの仕込みのレシピを持っていて、最終的に出てくる仕込みがちゃんとしてればAさんBさんの仕事の詳細までいちいちシェフが細かくチェックしない体制になっていると思う。大雑把にいうとそういう考え方をプログラムで再現したのがオブジェクト指向言語

なので、本気で料理初心者がいきなり厨房の仕切りを任されて上手くいくのは難しいように、構造プログラミングのありがたみすらわからない段階でオブジェクト指向プログラミングに手をつけても意味わからんだろうと思うのがおばさんの立場です。

追記 おばさんはRubyを勧めておきますオブジェクト指向言語ですが、手続き型的に書き下すことも出来るからです。一つの言語手続き構造オブジェクト指向、全部勉強できますメソッドも便利なのが一通りあるし、日本語を扱うのにも問題が少ないです)

次に問題を分解できるようになろう。

例えば、クイズゲームを作りたいと考えたときクイズゲームを作りたいです、って問題は大きすぎる。

クイズゲーム必要な要素は、問題文を表示する、回答を入力してもらう、正誤判定をする、正誤判定の結果を表示する、ということだなぐらいにまず分解する。

これを実際にプログラミングしようとすると、もっと分解できてさら問題が見えてくると思う。

コンピュータってのは創造的なことはできない代わりに、とても簡単なことをとても階層的に重ね合わせて大きな問題を解けるように作られてる。それを心するといいと思う。

からないことは調べられるようになろう。最後はこれ。

これ超大事プログラミングって本当に自分で1からものを考えなきゃいけないことってあまりない。大きな問題あなただけの問題かもしれないけれど、それを構成する小さな問題は大抵他の誰かが解いている問題なので、調べてみれば答えが見つかると思う。

エラーメッセージが出てきたらまずググってみる。翻訳しても初心者には意味がわからないし、ググったら誰かが解説付きで紹介してくれているのでその解説を読んだりしながらエラーメッセージとの付き合い方を覚えていけばいい。

メソッドの使い方がわからなかったら言語公式サイトに行ってみる。メソッドの使い方で大事なのは呼び出し方、返ってくる値の型とかそういうのだから、こういうところはググるよりも公式サイトに書いてあることをしっかり読んで理解する。

あと、アルゴリズム勉強もしてみるといいと思う。アルゴリズムデータ構造計算量の勉強大学学部レベル教科書ちゃんと読んでみると、例えばデータベースを操作するSQLというものを書くことになった時とかに効いてくる。あとは作ったプログラムが遅すぎてどうしようとかいうのを解決する時とか。

なんか深夜までいろいろ書いてしまったけど、あくまでもプログラマじゃないおばさんが書いたものなので、みんなでツッコミとか入れてくれると大変助かります

増田怖いよツッコミ怖いよ、もちろんおまんじゅうも怖い。

2019-04-02

新元号「令和」と文字コード(主にUnicode)の問題

https://togetter.com/li/1333809

なんで実際の文字文字コードを気にしなきゃいけないんだよ。こいつらやべえな。

パソコンで打てる文字以外は存在しないと思ってそう。こうやって文化破壊されるんだな……。

2019-03-17

Windowsに詳しくなかったワイの窮地

プロマネ「うーん、某社の社内システムをほぼ作り終えたはいいが、肝心のInternet Explorer 11でなんで文字化けするんや?」

通りすがりのワイ(別プロジェクト所属)「何か悩んでるんですか?」

プロマネかくかくしかじかなんだよ。文字コードUTF-8なんだけどさ?」

ワイ「あー、WindowsSJISしか対応していませんよ。もちろんIEも」

プロマネ「ファッ!!??」

ワイ「クライアントにはゴメンナサイして、文字コード絡むところ修正しないとだめっすねえ。Unicode顔文字も受け付ける要件だったんですか?じゃあ要件定義からやり直しっすねえ」

現在、数か月かけてシステム見直し最中

最近ワイ「ん?Internet Explorer特別UTF-8対応している?んん?」

ワイ会社行きたくないんだが。

これワイが悪いんか?

未だにUnicode対応してないWindowsは悪くないんか?

2019-03-01

金融SIerには関わるな

金融SIerと一緒に仕事してるが、そこのエンジニア原則ネット接続出来ない環境で開発している。

ホストシステムの開発なら別に構わないが、そんな環境でBtoCのインターネット公開サービスを開発しようとしてるのがタチが悪い

Android studioとか、インターネット接続下でないとインストールすら出来ない開発ツールデフォルトなのに

そんなんだから生産性が上がらない。開発ツールインストールだけで1ヶ月かかることもあるし、オフラインインストールが出来るかなり昔のツールを使わざるを得ないこともある

文字コードも今時shiftjisであるホストと連動するからunicodeは使えないし第二水準までの文字しか使えない。

こんな状況でFintechなんて進むわけがない。もう離れたか別にいいが何も得るものは無かった

2019-02-27

anond:20190226153319

2019-01-22

うんち、そうだねうんちだね

って会話を時々見るけど、なにか文字コード的に俺たちには見えない文字とか記号でも隠されてるんか?

ちがうようんちだよ

ってやり取りは逆に見たことないし

2019-01-15

良いテキストエディタが無い

・「.txt」等の外部ファイルが開ける

・タブが使える

・セキュアなサーバーに保存される

スマホでも編集可能

・出来れば、複数文字コードサポートしてほしい

文字サイズの調整とか、フォントカラーとか、リストかいらない

作業履歴勝手に保存される

PCスマホアプリがある

こんなエディタいか

2018-12-24

UTF8ってunsigned charで良いんだっけ?問題

https://qiita.com/yumetodo/items/54e1a8230dbf513ea85b]

から出発したこの話。あちこち議論されているようですな。

https://b.hatena.ne.jp/entry/s/qiita.com/yumetodo/items/54e1a8230dbf513ea85b]

https://togetter.com/li/1301253]

https://naruse.hateblo.jp/entry/2018/12/24/013446]

文字コードを多少かじった人間としては、また人類文字コードで混乱している。と思っていて議論が深まるのかなと思ったりします。

ただ、この話、見ててもやもやする所が一つありまして、UTF-8の1コードポイント=uint8_t=unsigned charでええんかいな。という点です。

文字コードを少しでも知っている人はUTF-8は1つのコードポイントを可変長のバイト列で表します。

よく言われるようにASCIIは1バイト、大体のCJKV文字は3バイト以上で表します((久々にWikipediaUTF-8見たら、UTF-8サロゲートペアってあるんだねー。罪深いわOrale〜))。最大6バイトで1つのコードポイントを表します。

まりですね、char16_tとかchar32_tとかがUTF-16UTF-32マッピングされるのは分かるんですよ。サロゲートペアは脇に置いておいて、コードポイントを表すのにはこの型(っつーか、データ長)を使うよってのが分かるので。

サロゲートペアを考えたときのUTF16も同じ考え方になるんですけど、UTF-8みたいな可変長のバイト長を取るエンコード方式は、結局、1「文字」を表す型(データ長)が定まらないんですよ。

char8_tをunsigned charの子クラスにしたとしてもそれって、UTF-8にとっては「1文字を表す型」ではないんですよ。「1文字を表すバイト列の単位の1つ」でしかないんですよ。(サロゲートペア考慮したときchar16_tも同様)。

意味論で言っちゃえばUTF-32に対してchar8_tを使っても意味は同じになるんですよ。UTF-32って8ビット×4で構成されるだけなんで。

なので、UTF-8で表される1文字を型で使いたかったらuint64_tの子クラス(本当は最大6バイトなので48でいいんだけど)にしなきゃダメなんじゃねぇの?もしくは最少8ビットで48ビット保証する型。とC++界隈ではない自分は思うわけです。

つーか、可変長文字って示すフラグになる型を作った方がまだマシじゃないのと思うのです。

ログイン ユーザー登録
ようこそ ゲスト さん