タグ

programmingに関するneumannのブックマーク (514)

  • SharePoint アドインの認証コード OAUTH フロー

    SharePoint とは別にホストされる Web アプリケーションまたはサービスが必要です。 アドインがデバイス アドインであったとしても、ACS に登録できる Web アプリケーションかサービスの URL が必要です。これは、Web コンポーネントが他の何にも使用されないとしても必要です。 わかりやすくするために、この記事ではアドインを Contoso.com という Web アプリケーションと仮定します。 アプリケーションは、SharePoint クライアント オブジェクト モデル (CSOM) または SharePoint REST API を使用して、SharePoint への呼び出しを行います。 アプリケーションが最初に SharePoint にアクセスしようとすると、SharePoint は Contoso.com アプリケーションに送信できる認証コードを ACS に要求しま

    SharePoint アドインの認証コード OAUTH フロー
  • Education Ecosystem | The go-to platform for project-based learning

    Education Ecosystem is a Project-based Learning platform that teaches students how to build products using real project examples in topics such as Programming, Blockchain, Cybersecurity, Game Development, Data Science and Artificial Intelligence.

  • ASCIIコードの秘密 - ザリガニが見ていた...。

    当はエスケープシーケンスのことを調べていたのだが、その前にASCIIコードについて調べることになってしまった...。文字コードの基として知っているつもりだったASCIIコードについて、あらためて見直してみると、実は当の意味をよく分かっていなかったことに気づいた。 ASCIIコード表 ASCIIコードは、7ビット(2進数7桁)の文字コードであり、全部で128のコードが定義されている。 最も基的な文字コードであり、その他多くの文字コードはこのASCIIコードと互換性を維持している。 00 10 20 30 40 50 60 70 00 NUL DLE SP 0 @ P ` p 01 SOH DC1 ! 1 A Q a q 02 STX DC2 " 2 B R b r 03 ETX DC3 # 3 C S c s 04 EOT DC4 $ 4 D T d t 05 ENQ NAK % 5

    neumann
    neumann 2015/02/10
    これからのIT技術者も半世紀以上前の技術を学ばなければいけないのだなぁ。
  • エレベーターゲームで学ぶプログラミング『Elevator Saga』 | 100SHIKI

    初心者向けとは言いがたいが、なかなかおもしろかったのでご紹介。 Elevagtor Sagaではエレベーターのシミュレーションを通じてプログラミングを学べるサイトだ。 レベルごとに課題が与えられて、独自のアルゴリズムを組むことでクリアーしていく。 APIなどはサイトで公開されているのでそれを組み合わせればいいだろう。 自分なりのコードを組んで「Start」ボタンを押すとグラフィカルに結果がわかってなかなか楽しい。ちょっと難しいかもしれないが興味がある人は是非どうぞ。

    エレベーターゲームで学ぶプログラミング『Elevator Saga』 | 100SHIKI
  • Ruby開発者・まつもとゆきひろ氏の新言語「Streem」のソースコードを読んでみよう! ~ 文法と構造を規定する「lex.l」と「parse.y」

    まつもとさん自身によるStreemについての解説は、今後日経Linuxで順次掲載されるようです。まつもとさんがStreemについて解説する内容は、おそらく、プログラミング言語設計に関する高レベルなものとなるのではないでしょうか。 記事はそれとは無関係に、2015年1月に公開されているStreemについての低レベルな解説、つまり現時点のStreemのソースファイル(の一部)の読み解き方を示します。具体的には、GitHubのStreemリポジトリにある「lex.l」と「parse.y」という2つのソースファイルについて解説します。 Streemのソースファイルは、https://github.com/matz/streemからダウンロードできます。画面右下にある[Download ZIP]ボタンをクリックしてください。 lex.lとparse.y ダウンロードしたStreemソースファイルの

    Ruby開発者・まつもとゆきひろ氏の新言語「Streem」のソースコードを読んでみよう! ~ 文法と構造を規定する「lex.l」と「parse.y」
  • 状態遷移図/表、すなわち設計をコードでテストする

    状態遷移表からひな型コードを生成する この状態遷移表からコードを起こすわけですが、状態遷移の実装については『StateパターンでCSVを読む』を書きました。デザイン・パターンの一つ:Stateによる実装です。今回の実装はC、継承も仮想関数も使えないという利き腕を封じられた条件なので戦術を大きく変えにゃならんです。 状態遷移の実装は要するに「(1)現状態 と (2)受理したイベント の組」に対応する「(3)アクション と (4)遷移先(新たな状態)」を引き当てることに他なりません。ならば上記(1)~(4)の並びをレコードとし、そのレコード列(=状態遷移表)から「(1)現状態 と (2)受理したイベント の組」に一致するレコードを探し出して「(3)アクション を実行して (4)新たな状態 に遷移」すればいい。 状態遷移表からひな型コードの生成には使い慣れた「T4-template」を用います。

    状態遷移図/表、すなわち設計をコードでテストする
  • 雑把の UI アーキテクチャー史(MVCからMVVMへ) | プログラマーズ雑記帳

    Web の場合は View と Controller の違いははっきりしてます。 View は html ページとその作成を担当します。 CGI は アドレスとパラメーター(アドレスの ? の後など)を受け取り、処理を行います。 その受け取り部分が Controller です。 Model と View ではなく、なぜ MVC としたのでしょうか ? 『 GoF 』 では Controller を分ける利点をいくつか挙げられています。 キーボードの応答を変えたり、メニューからの呼び出しに変更するとき、表示方法を変更しなくていい。 入力イベントを無視するといったことをコントローラーのインスタンスの入れ替えで可能。 その他にも "View を入れ替えれば、 PC アプリ、 Web アプリでも使えるように" という理由もあります。 ちょっと無理そうな話ですが、例えば、 PC アプリが次のような

  • Androidの通信処理に何使えばいいのか分からないって話。 - なるようになるかも

    特に結論はないです。当に分からないので。 ソケットレベルまで踏み込むと、途端に面倒になってどのライブラリを使っても手に負えませんし、単にGETとかPOSTとかする分には正直どれ使ってもそこまで変わらない気がしてます。 それより自己署名証明書の検証を無視して通信を行うと端末が爆発するライブラリが必要だと思います。 Apache HTTP Client みんなお馴染みDefaultHttpClient。色々なライブラリがあるけど、最終的にはここに行き着いていることが多いです。 しかし「Apache HTTP Clientとは何なのか」、という説明はあまり見ない気がします。 自分も「Apacheソフトウェア財団のトップレベルプロジェクトとして運用されている、RFCを満たす実装を目指したJava向けのHTTPインターフェース」という超ふんわりとした認識しかないです。 かなり巨大なライブラリで、全

    Androidの通信処理に何使えばいいのか分からないって話。 - なるようになるかも
  • Windowsフォームで直線コントロール

    連載目次 従来のVB 6(Visual Basic 6.0)ではLineコントロール(直線を描くためのコントロール)が存在していた。しかし、.NETではこのようなコントロールは用意されていない。そこで稿では、既存の.NETのコントロールを応用して、直線に見せ掛けるテクニックを紹介する。 .NETコントロールで直線に見せるテクニック Lineコントロールの代わりに使用する.NETのコントロールは、Labelコントロールである。 これをフォーム上に配置して、まず次の設定を行う。 Textプロパティを空にする AutoSizeプロパティをfalseに設定する さらにコントロールのプロパティを次のように設定する。 (1)立体的な水平線の場合には…… SizeプロパティのHeightプロパティを「2」に設定する BorderStyleプロパティを「Fixed3D」に設定する (2) 平面的な水平線

    Windowsフォームで直線コントロール
  • dfltweb1.onamae.com – このドメインはお名前.comで取得されています。

    このドメインは、お名前.comで取得されています。 お名前.comのトップページへ Copyright © 2020 GMO Internet, Inc. All Rights Reserved.

    dfltweb1.onamae.com – このドメインはお名前.comで取得されています。
  • プログラマ歴12年の僕が選んだ「10年経っても役立つ技術書17選」 - give IT a try

    はじめに 僕がプログラミングを始めてから、もうすぐ12年になろうとしています。 この12年間、いろんな技術書を読んだり、仕事やプライベートでたくさんコードを書いたりしてきました。 最初に入ったSIerでは主にJavaを、前職の社内SE時代はC#をメインのプログラミング言語として使ってきました。 現在はRubyをメインで使っていますが、言語が変わっても、また何年経っても「これはあのとき学んだ知識が役に立ってるよなあ」と思う瞬間がときどきあります。 そこで今回はこれまでに読んだ技術書を一通り振り返り、「こので学んだことは今でも役に立ってる」と思うものを17冊ピックアップしていきます。 おことわり (2014.09.29 20:00追記) このエントリのタイトルは「10年経った今でも役に立っている」という意味で付けています。「今から10年後まで役立つ」という意味ではありません。(紛らわしくてご

    プログラマ歴12年の僕が選んだ「10年経っても役立つ技術書17選」 - give IT a try
  • Atom Flight Manual

    CompanyEngineeringProductSunsetting AtomWe are archiving Atom and all projects under the Atom organization for an official sunset on December 15, 2022. January 30, 2023 Update: Update to the previous version of Atom before February 2 On December 7, 2022, GitHub detected unauthorized access to a set of repositories used in the planning and development of Atom. After a thorough investigation, we hav

    Atom Flight Manual
  • Sublime Text

    Effortlessly Split Panes and Navigate Between Code With the new Tab Multi-Select functionality, tabs become first-class citizens in the interface. A simple modifier when performing actions will split the interface to show multiple tabs at once. Works with the side bar, tab bar, Goto Anything and more! What’s New Sublime Text 4 is packed with new features and enhancements, including: GPU Rendering

    Sublime Text
  • プログラミングの世界観を変える衝撃!Paradigms of Computer Programmingで震えるほどの知的感動を体験した

    MOOCのedXでParadigms of Computer Programmingという講座を受けた。 LouvainX: Louv1.01x: Paradigms of Computer Programming | edX 感動というものを頭に走る電撃と定義するならば、 このCourseは自分にとって、まちがいなく最高の感動だった。 プログラム言語のパラダイムやコンセプトが紹介される。 5つのパラダイムが紹介される。 Functional Programming(関数型プログラミング) Object-Oriented Programming(オブジェクト指向プログラミング) Deterministic Dataflow Programming(決定性データフロープログラミング) Multi-Agent Dataflow Programming(マルチエージェントデータフロープログラミン

    プログラミングの世界観を変える衝撃!Paradigms of Computer Programmingで震えるほどの知的感動を体験した
  • dfltweb1.onamae.com – このドメインはお名前.comで取得されています。

    このドメインは、お名前.comで取得されています。 お名前.comのトップページへ Copyright © 2020 GMO Internet, Inc. All Rights Reserved.

    dfltweb1.onamae.com – このドメインはお名前.comで取得されています。
  • オブジェクト指向は禁止するべき - きしだのHatena

    プログラムがまだ不慣れな人が「プログラムちょっとわかるようになったけど、まだぜんぜんオブジェクト指向とかできてません」のように言ったり、ちょっと慣れた人が「このソース、ぜんぜんだめ。オブジェクト指向ができてない」にようなことを言ったり、まるで、オブジェクト指向ができてるかどうかがよいプログラムかどうかを表すことになってるようだ。 Javaのアルゴリズムのに、「Javaなのにオブジェクト指向ができていない」のような書評がついているのを見たときには、お前は何を求めてるんだと思ったりもした。 そのようなオブジェクト指向は、窓から投げ捨てるべきだ。オブジェクト指向はプログラムのよしあしの基準にならない。 むだにHogeインタフェースとHogeImplクラスがあったり、むだにnewするだけのcreateメソッドがあったり、どこで値が設定されてるかわからないオブジェクトがひきまわされてたり、ソースコ

    オブジェクト指向は禁止するべき - きしだのHatena
  • 何故プログラマーは起業に追い込まれるのか

    自分はプログラマーで、多くのプログラマーと同じように、コードを書く行為そのものが幸せであり、いつまでもコードを書いていたいと思う。 だが30を越えて、今までいくつかの会社でサラリーマンエンジニアとして働いた経験を総合するに、 少なくともこの国でプログラマーで居続けるためには起業する以外の選択肢は無いのだという結論に至った。 良いコードを書くと出世してコードが書けなくなる普通にコードを書いて、スキルを磨いて、リリースを成功させていくと、やがて肩書きがついて雑務に振り回される日々が訪れる。 プログラマーにとって何よりも大事なのは連続した集中、それも出来るだけ長い時間だ。 昇進して部下が出来たり、質問される機会が増えたり、評価業務やら、上級職会議やら、採用面接やら、一つ一つは大した事が無くても、 出社時間は気が付けば断片化して切り刻まれ、一日に一時間続けて集中する事すら困難になってしまう。 もは

    何故プログラマーは起業に追い込まれるのか
  • ペアプログラミングして気がついた新人プログラマの成長を阻害する悪習

    最近、あまりプログラミングが得意でない人のサポートをする形で、長い時間にわたってペアプログラミングを行っている。そのなかで、気がついた悪い習慣と成長するための良い習慣というものをまとめてみる。 この記事のバックグラウンドとなる体系的知識がになりました。 エンジニアリング組織論への招待 ~不確実性に向き合う思考と組織のリファクタリング あわせて読みたい 経営者マインドが足りない!vs. 現場に任せてくれない!の対立をなくすカードゲームをつくった話 新人プログラマに知ってもらいたいメソッドを読みやすく維持するいくつかの原則 新人プログラマに知っておいてもらいたい人類がオブジェクト指向を手に入れるまでの軌跡 ペアプログラミングして気がついた新人プログラマの成長を阻害する悪習 あきらめるにはまだ早い!ソースコードの品質向上に効果的なアプローチ 心理的安全性ガイドライン(あるいは権威勾配に関する一

    ペアプログラミングして気がついた新人プログラマの成長を阻害する悪習
  • 35歳定年説より怖いフルスタックエンジニアしか生き残れない未来とは - paiza times

    Photo by Joi 今回のpaiza開発日誌は片山がお送りします。 今後も技術(開発)を中心にエンジニアとしてのキャリアを歩んでいきたいなと考えている方向けに最近騒がれているフルスタックエンジニアとは何か、という事と、何故今後フルスタックエンジニアしか生き残っていけないのか?という事について書いてみました。 ■最近よく見かける【フルスタックエンジニア】とは何か? まずStackって何だろう?、というところで海外の記事などを読むと"LAMP stack"という言葉が良く出てきます。LAMPの場合、OSはLinux、WebサーバはApache、データベースはMySQL、プログラミング言語はPHP(もしくはPerlPython)という形で組み合わせたものの事を言います。つまりOS、Webサーバ、DB、プログラミング言語の組み合わせ≒積み重ね、なのでStackという事のようです。こういった

    35歳定年説より怖いフルスタックエンジニアしか生き残れない未来とは - paiza times
  • 開発チームにアーキテクトがいないなと感じてしまうような、残念なコードスメルの例 - 達人プログラマーを目指して

    まったく個人的なモチベーションの問題から、前回の最終更新から2年以上が経過してしまい、多くの読者のみなさんにはご心配をおかけいたしました。「プログラミングに関して調べたことや日々感じたことをメモとして残していきたいと思います。」というもともとの原点に立ち返って、あまり気負わずに、また今後も時々更新していけたらと思います。今までこのブログの主なテーマとして、JavaEEやSpringといったような、いわゆる業務開発で使われるような技術を中心としてきたわけですが、最近Springを使ったJavaの開発に(アーキテクトではなく)プログラマーとしてちょっと参加する機会があったので、その時気づいたこと、感じたことを書いてみたいと思います。 さて、皆さんはアーキテクチャやアーキテクトという言葉に対してはどのようなものをイメージするでしょうか。システムのセキュリティを確保するための方式であったり、大量の

    開発チームにアーキテクトがいないなと感じてしまうような、残念なコードスメルの例 - 達人プログラマーを目指して