タグ

プログラミングに関するotori334のブックマーク (69)

  • Ada - Wikipedia

    Ada(エイダ)は、構造化・静的型付け・命令型・オブジェクト指向のパラダイムを持つ汎用プログラミング言語の一つである。構文はAlgol系である。 史上初のプログラマとされるエイダ・ラブレスの名前にちなんでAdaと命名されている。ADAと表記するのは誤り。 フリーのコンパイラとしては、GNATなどがある。 特徴[編集] Adaのデータ型の階層構造 1979年、米国国防総省が信頼性、保守性に優れた、主として組み込みシステム向けの言語を作りたいという意図のもと、国際競争入札を行い4社に発注、各設計仕様書の表紙が赤、青、黄、緑だったことから、そのままそれぞれの言語名称としてRED、BLUE、YELLOW、GREENと呼ばれた。この入札で優勝したのはフランス人チームで、公平を期すため選定時にはGREENと名付けられた。そのような理由から、イメージカラーは緑である。特徴的な要件としては、大規模開発や長

    Ada - Wikipedia
  • インテリセンス - Wikipedia

    インテリセンス (IntelliSense) は、Microsoft Visual Studio の統合開発環境で使用されている、マイクロソフトによる自動補完システム。インテリセンスはプログラマが入力中のシンボル名を補完するだけでなく、メタデータベースのリフレクションを用いることにより、変数名、関数名、メソッド名のドキュメント化と曖昧性の解消に役立つ。 メリット[編集] 他の自動補完システムと同様に、インテリセンスは関数の仕様、特に引数リストを確認する便利な方法である。数多くの名前を覚えてキーワードを入力する必要性を減らすことによりソフトウェアの開発を効率化する。コーディング中においてシンボル(つまり変数と関数)をインタラクティブにドキュメント化し動的にツールチップを表示できるため、外部のドキュメントを参照する頻度を減らせる。 インテリセンスは、クラス名や変数名および開発中のアプリケーショ

  • BASIC - Wikipedia

    この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方) 出典検索?: "BASIC" – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL(2021年5月) この記事には独自研究が含まれているおそれがあります。問題箇所を検証し出典を追加して、記事の改善にご協力ください。議論はノートを参照してください。(2023年9月) BASIC(ベーシック)は手続き型プログラミング言語のひとつ。 名前は「beginners' all-purpose symbolic instruction code」のバクロニムである。日語では「初心者向け汎用記号命令コード」を意味する。 概要[編集] 誕生したのが1964年であり、当時普及して

    BASIC - Wikipedia
  • ヒューリスティック - Wikipedia

    ヒューリスティック(英: heuristic、独: Heuristik)または発見的(手法)[1] [2]:7 [3]:272とは、必ずしも正しい答えを導けるとは限らないが、ある程度のレベルで正解に近い解を得ることができる方法である。発見的手法では、答えの精度が保証されない代わりに、解答に至るまでの時間が短いという特徴がある。 主に計算機科学と心理学の分野で使用される言葉であり、どちらの分野での用法も根的な意味は同じであるが、指示対象が異なる。すなわち、計算機科学ではプログラミングの方法を指すが、心理学では人間の思考方法を指すものとして使われる。なお、論理学では仮説形成法と呼ばれている。 計算機科学[編集] 計算機科学では、コンピューターに計算やシミュレーションを実行させるときに、発見的手法を用いることがある。たいていの計算は、計算結果の正しさが保証されるアルゴリズムか、または計算結果が

  • Julia (プログラミング言語) - Wikipedia

    このように、MATLABや、PythonのライブラリであるNumPyなどと同様に簡潔に数学的な操作を書くことができるうえに、行列積を含めて多くの機能がC言語やFortranと同程度の速度で動作する [7]。 歴史[編集] 2009年に開発が始まり、2012年2月にオープンソースとして公表された[8][9]。 2018年8月8日にバージョン1.0がリリースされ、[10][11][12]2020年8月1日にバージョン1.5がリリースされた[13]。 2018年12月、開発者の3人がSIAM(アメリカ工業及び応用数学会)によるジェームズ・H・ウィルキンソン賞を受賞したことが発表された[14]。 関連項目[編集] Fortran Mathematica NumPy SciPy R言語 MATLAB GNU Octave 脚注[編集] ^ “Download Julia”. julialang.or

    Julia (プログラミング言語) - Wikipedia
  • POSIXコマンドは「どの環境にもあるコマンド」ではないよという話 - Qiita

    はじめに POSIX コマンドはどの環境にもある(追加インストールの必要がない)コマンドだと思われがちですがこれは間違いです。POSIX コマンドにどの環境にもあるという性質は有りません。POSIX コマンドの中でどの環境にもあるコマンドは実際には半分程度しかありません。 関連記事 POSIX準拠 とは当はどういうことなのか?「POSIXで規定されたものだけを使う」ではありません 補足 Linux は POSIX に準拠してないからだという意見もあるかとは思いますが、現実に使われている環境を無視して「どの環境にもある」と主張しても意味はありません。 当にどの環境にもあるコマンドとは? 全 POSIX コマンドは 160 個 POSIX コマンドは全部で 160 個あります。そのうち 22 個はシェルにビルトインされているコマンドなのでどの環境にもあると言えます。残りは 138 個のコマ

    POSIXコマンドは「どの環境にもあるコマンド」ではないよという話 - Qiita
  • 実行環境依存のコードに対してテストを書く考え方

    社内用の啓発記事ですが、閉じる理由がないのでここに投げます。 ブラウザにべったりなコードを書いてると、ブラウザや node.js 固有の環境をインラインで記述してしまうことが多々あると思います。 あえてダメダメなブラウザ向けのエントリポイントの例を書きます。 // main.ts let id = localStorage.get('id'); if (!id) { id = `${navigator.userAgent}-${Math.random()}`; localStorage.set('id', id); fetch('/auth', { method: 'POST', credentials: 'include', body: JSON.stringify({ id, at: Date.now(), }), headers: {'Content-Type': 'applicat

    実行環境依存のコードに対してテストを書く考え方
  • とほほのRust入門 - とほほのWWW入門

    「ラスト」と読みます。 Mozilla に従事するグレイドン・ホアレが個人的に開発していましたが、のちに Mozilla の公式プロジェクトとなりました。 2021年には、AWS, Google, Huawei, Microsoft, Mozilla がメンバーとなる Rust Foundation に権利が委譲されました。 Rust は「錆(さび)」を意味します。開発チームに自転車乗りが多く、ロゴも自転車のさび付きチェーリングを元にしています。 C言語やC++に変わる言語として開発されました。 Stack Overflow で2016~2019年の間「最も愛されているプログラミング言語」として1位を獲得しています。 Firefox の Servo(HTMLレンダリングエンジン)も Rust で開発されています。 if ... や while ... なども式として評価することができます。

  • ROSを学生に教えるということ - えいあーるれいの技術日記

    ROSJP45回の発表内容とその延長です。この発表資料をきっかけにしてROS教育などについて活発なディスカッションができるとよりオープンになるのかなーと思ったりします。私が知らないだけかもしれないので、その場合は教えていただけると幸いです。 (発表久々すぎて発表にならないレベルで噛んでしまったのですみません…) ROSを学生に教える?? 昨年の春、「ROSが使える学生を増やす」という目標をもとに研究室間でのROS講習のための計画を練りました。 研究室ではロボット系の研究が活発に行われており先輩の成果を引き継ぐことがしばしばあります。そのため、ROSを導入することでその遺産の再利用を加速させる狙いがあります。 カリキュラムを組むといっても、どのような研究でROSを使うのかをヒアリングしてそれに対応するサンプルプログラムを提示して説明するという感じで進めました。 課題 ROSを学生に対して教

    ROSを学生に教えるということ - えいあーるれいの技術日記
  • 不自由なプログラミング - timakin.log

    プログラミングは自由ではない ここ最近、 「プログラミングを勉強して自由な働き方を手に入れよう!」 みたいな趣旨の記事や広告を良く見かける。 大方プログラミング教育系の事業が増えてきているからだと思う。 それに対して非常に違和感を感じる。 というのも、自分の中でプログラミングは楽しいものではあっても、 決して自由と近しいものではないと思うからだ。 自由に一番近い職業と言われると、確かにそうかもしれないが、 それでも他の職業と同様にエンジニアは不自由だと思う。 (とはいえ新卒なのでなんとも言えない) ここ最近プログラミングが楽しくないと感じる機会が少なからずあるので、 その理由と合わせて違和感の原因を整理しておく。 なので、この記事の正確な主旨は、「僕が」プログラミングを不自由に感じる場面とその理由、だ。 (下記は自分の技術力のなさを棚上げしている。このタイミングでまさかりが飛んできたら死ぬ

    不自由なプログラミング - timakin.log
  • 【Python3】unittest使い方まとめ

    unittestの基的な使い方は以上です。 どうですか?かなり簡単でしょう? これであなたもテストホリックの仲間入りですね!!(死んだ魚の目) ※ここから先は具体的な使い方等をつらつらと書いていきます。ここの内容は前提知識として進めるので、まずはここまでをしっかりと押さえてから読み進めると良いかと思います。 3.テストケースの分け方 テストコードを書いているとテストケースをどの単位でまとめるかを迷うことは多々あるかと思います。 これは当に人それぞれだと思うので私の個人的な方針だけ書いておきます。 ①1試験項目につき1つのテスト(test〜の関数)を作成 (subTest()を使用する場合を除く) ②1関数に1つのテストケース(Test〜のクラス)を作成 (たとえテストが一つしかない関数でもテストケースは個別に作るべき) ③同じクラス・モジュールに対するテストケースはなるべくテストスイー

    【Python3】unittest使い方まとめ
  • レーベンシュタイン距離 - Wikipedia

    レーベンシュタイン距離(レーベンシュタインきょり、英: Levenshtein distance)は、二つの文字列がどの程度異なっているかを示す距離の一種である。編集距離(へんしゅうきょり、英: edit distance)とも呼ばれる。具体的には、1文字の挿入・削除・置換によって、一方の文字列をもう一方の文字列に変形するのに必要な手順の最小回数として定義される[1]。名称は、1965年にこれを考案したロシアの学者ウラジーミル・レーベンシュタイン (露: Влади́мир Левенште́йн) にちなむ。 レーベンシュタイン距離は、同じ文字数の単語に対する置換編集に使われているハミング距離の一般化であると見なすことが可能である。レーベンシュタイン距離の更なる一般化として、例えば一回の操作で二文字を変換する等の方法が考えられる。 例[編集] 実際的な距離の求め方を例示すれば、「kitt

  • Competitive programming with AlphaCode

    Research Competitive programming with AlphaCode Published 8 December 2022 Authors The AlphaCode team Note: This blog was first published on 2 Feb 2022. Following the paper’s publication in Science on 8 Dec 2022, we’ve made minor updates to the text to reflect this. Solving novel problems and setting a new milestone in competitive programming Creating solutions to unforeseen problems is second natu

    Competitive programming with AlphaCode
  • else 句に「// 何もしない」コメントを書く意味について

    確かに、パッと見で 「なんだこれ?」 になりますね。 意味のないコメントとして else 句ごと削除してしまって良さそうにみえます。 しかし、実はこの「何もしない」コードは、 プログラミング(理論)的に面白い側面を持っている ので、簡単に記事にまとめてみたいと思います(記事中では Swift に似た擬似コードを使用します)。 キーワード if 式、網羅的パターンマッチ、参照透過、副作用、モナドと単位元 else 句が省略できる条件 例えば、次のコード例を考えてみます: let array: Array<Int> = ... var positiveArray: Array<Int> = [] // var = 可変変数 for x in array { if x > 0 { positiveArray.append(x) } else { // 何もしない } } ここでは array か

    else 句に「// 何もしない」コメントを書く意味について
  • ゆみや on Twitter: "オープンソースの定義を考えたブルース・ペレンスはこういうことを言っているわけだけど、現実には Babel の開発者が寄付を訴えたり、今回の colors.js/faker.js のように開発者が実力行使に出たりしているわけなんだよ… https://t.co/tHHm5ANRqJ"

  • 書き捨てるためのRust - Qiita

    はじめに Rustは「きちんとしたプログラムを書く時にはいいけど、書き捨てのプログラムを書くには向いていない」と言われることがあるようです。「一般論としては全くその通り」と思う一方で、自分自身を振り返ってみると、これまでPythonで書いていたような書き捨てに近いプログラムも全部Rustで書くようになっています。 なぜ書き捨てのプログラムもRustで書くのかを考えてみると 最初は書き捨てだと思っていても、手直ししながら使い続けることは意外と多い コンパイラが割と多くのエラーを捕捉してくれるのでデバッグの時間が短くて済む 記述量の多さはエディタの補完があってあまり気にならない といったあたりが理由になっています。 そうはいってもRustがいろいろと面倒な言語であることには違いないので、書き捨てるときは普段のRustプログラミングとは少し違った書き方をした方がより早く書けるのではないかと思いま

    書き捨てるためのRust - Qiita
  • コーディング用のフォントから、自分に適した一番のフォントを見つけることができるオンラインツール -Coding Font

    コーディングに使用するフォントを何にするかは、非常に重要です。コードを記述、読み取る、修正・変更するなど、デベロッパーは多くの時間を費やします。 コーディング用のたくさんのフォントから、自分にとって読み書きに適した一番のフォントを見つけることができるオンラインツールを紹介します。

    コーディング用のフォントから、自分に適した一番のフォントを見つけることができるオンラインツール -Coding Font
  • Pythonならわかるシステムプログラミング - Qiita

    pyspa Advent Calendar 2021のエントリーです。昨日は@kuenishiさんでした。 どんなプログラミング言語でも、最終的にはOSへのシステムコールとなってプログラマーがやりたいことを実現しています。文字列をコンソールに出したり、ファイル入出力、ネットワーク入出力などなど。Goの場合Goならわかるシステムプログラミングというがありますね。もちろん、みんな一人10冊ずつぐらいお買い上げのことだと思いますが、せっかくなので他の言語でも見てみましょう。 ここで扱うのは先日、TIOBEインデックスでプログラミング言語の人気No.1になったPythonです。 ただし、Pythonでメインの処理系のCPythonではなくてPyPyで見ていきます。理由は後から説明します。 PyPyのコードは次の場所でホストされています。 早速、次のコードの中身を見ていきましょう。 print()

    Pythonならわかるシステムプログラミング - Qiita
  • イヤホン配信を支える音のプログラミング入門 - Mirrativ Tech Blog

    こんにちわ。shogo4405です。エントリーは普段UI開発を行なっているクライアントエンジニア向けに、Mirrativのイヤホン配信を支えている音のプログラムの基礎を紹介していきたいといます。 音のプログラミングの概要を掴んでもらい、より詳しい部分については文献を調べるための参考になれば幸いです。 はじめに イヤホン配信の概要になります。Mirrativの配信はゲーム音源をマイクからの集音に頼っています。ユーザーが配信を行う際に、イヤホンを装着するとゲーム音源が配信にのらず視聴側としては物足りない配信になります。 これを解決する手段として、OS内部で再生中のゲーム音源をキャプチャーした音源。マイクから集音した音源。これらの音源を合成する方法があります。この手段をとることにより、イヤホンしながらでもゲーム音声を視聴者に届けることができるようになります。サービス上では、イヤホン配信と呼称し

    イヤホン配信を支える音のプログラミング入門 - Mirrativ Tech Blog
  • https://www.jstage.jst.go.jp/article/biophys/52/1/52_1_004/_pdf

    otori334
    otori334 2021/12/05
    遺伝暗号リプログラミング技術