タグ

programmingに関するDSLerのブックマーク (56)

  • SI業界(日本)のJavaプログラマーにはオブジェクト指向より忍耐力が求められている? - 達人プログラマーを目指して

    私自身は10年以上も前(JDK1.1の頃)にSJC-Pの認定を取って以来、Javaプログラミング関連の認定試験は受けていないのですが、昨日たまたまネットを検索して、SJC-Pとは別にJavaプログラミング能力認定試験という試験が存在していることを知りました。結構メジャーな認定試験のようですので、現役のJavaプログラマーJavaプログラマーを目指している学生さんで、今後受験に向けて勉強されている方々も多くいらっしゃるのではないかと思います。 試験は難易度に応じて3級から1級までランクが分かれており、2級まではJava言語の知識に関する筆記試験ですが1級の試験では実際のプログラムの修正を行う能力が実技試験として課せられます。試験範囲は以下で公開されています。 Javaプログラミング能力認定試験(試験範囲) 私は(自分で言うのも変ですが)、Javaプログラミングについてはこの道15年近くのキ

    SI業界(日本)のJavaプログラマーにはオブジェクト指向より忍耐力が求められている? - 達人プログラマーを目指して
    DSLer
    DSLer 2011/01/11
    今後Javaで開発するPJに関わるときには、注意深く見ていこう。こういう現状は、変えていかないといけない。変えられるように、自分も勉強していかなければ。
  • 経路探索アルゴリズムの「ダイクストラ法」と「A*」をビジュアライズしてみた - てっく煮ブログ

    as詳解 ActionScript 3.0アニメーション ―衝突判定・AI・3DからピクセルシェーダまでFlash上級テクニック を読んでいて、経路探索のアルゴリズムで A* が取り上げられていました。A* については、いろいろ検索して調べたりもしたのですが、やっぱりに書いてあると理解しやすいですね。せっかくなので自分流に実装してビジュアライズしてみました。ダイクストラ法まずは A* の特別なケースでもあるダイクストラ法から見ていきます。クリックすると探索のシミュレーションが開始します。スタート地点(S)からゴール(G)への探索が始まります。色がついたところが「最短経路が決定した場所」です。スタート地点から少しずつ探索が完了していきます。半分ぐらい完了しました。まだまだ進みます。最後まで終わりました。最短経路を黒色矢印で表示しています。ダイクストラ法は、スタート地点から近いノード(=マス

    DSLer
    DSLer 2010/01/26
    おもろい!!
  • いまさら聞けない「変数の命名規則」 - 基本へ帰ろう

    変数の命名規則って名前がついているのですね・・・というのをさっき知ったので・・ほんといまさら聞けない感じです・・w アッパーキャメルケース (UCC)、またはパスカルケース(PascalCase)(Pascal記法) キャメルケース - Wikipedia 複合語の先頭を、大文字で書き始める。 例 : CamelCase ローワーキャメルケース (LCC)、または単にキャメルケース キャメルケース - Wikipedia 複合語の先頭を、小文字で書き始める。 例 : camelCase アプリケーションハンガリアン(ハンガリアン記法) ハンガリアン記法 - Wikipedia アプリケーション ハンガリアンは、間違えたコードを間違えて見えるようにする記法である。 たとえば、論理座標にRelative Positionのrp、絶対座標にAbsolute Positionのapというプレフィッ

    いまさら聞けない「変数の命名規則」 - 基本へ帰ろう
    DSLer
    DSLer 2010/01/21
    名前があるとは、とても興味深かったw/俺は普通の変数はLCC、定数はスネークケースだわ、ってASとしては普通かw
  • 人材獲得作戦・3 - 人生を書き換える者すらいた。

    求人サイトに広告を出して3週間。 実に応募者はたくさん来たものです。40~50人はいました。ゾンビのごとくわらわらと集まってきたよ。 今回は、手っ取り早くふるいにかけるために、最初にプログラミングの実技試験をやりました。都合のよい日時を申告してもらい、その時刻になったら問題を送信(それも僕はcronで仕込むだけ)、応募者は時間内に回答のソースコードをメールで提出、という形式。 これなら定型的なメールのやりとりでほとんどの作業が済むし、僕の時間の節約になる。 これから試験を受ける人もいるので問題の内容は非公開だけども、ちょっとしたパズルを解くアルゴリズムを考えて実装する、というタイプの問題です。 プログラム言語は自由(受験者が得意なものを使ってよい)、標準入出力を使うだけなのでOSも自由、制限時間3時間としました。 ちなみに僕がこれを自分で解いてみたときは、C#を使って25分でできた。 とこ

    人材獲得作戦・3 - 人生を書き換える者すらいた。
    DSLer
    DSLer 2009/12/27
    中小企業にはやっぱり良い人材は集まりませんよねぇという話
  • ググるな危険:プログラマで、生きている:エンジニアライフ

    だいぶ前の話になりますけど、「新人にデータ移行ツールのコーディングを任せるので、面倒をみてやってくれ」と頼まれたことがありました。 その新人はやたらとGoogle検索に頼る人で、とにかくわからないことがあると、わたしに聞かずにGoogle先生に尋ねるんですね。 検索サイトにはわたしもかなりお世話になっていますし、昔に比べるととても使い勝手がよくなっていますけれど、その人の技術レベルに対応して検索結果を出してくれるほど高機能なわけではありません。 そのため新人の書いてくるコードは、つぎはぎというかちぐはぐというか、身についてない知識に振り回されてる感が満載でした。 そういう弊害を気にしつつも、自分で調べようとする気持ちは尊重するべきなのかなあ、と思ってとりあえず黙認していたんですが、あるとき「ちょっと考えが甘かった」と思い知らされるトラブルが発生しました。 その新人が「Windowsのレジス

    ググるな危険:プログラマで、生きている:エンジニアライフ
    DSLer
    DSLer 2009/11/14
    聞きたくない何かがあなたにはある・・・!ってことでは無いんでしょうかねw/と、うがった見方をしてみるw/プログラマの方々ってめちゃねちっこい人が多い気がする(※ご覧の文章はイメージです・もち人による)
  • 分裂勘違い君劇場 - エンジニアがUIデザインしたがる本当の理由

    ハイライトピックアップ Web2.0を引き起こしているのと同じ時代の潮流が、エンジニアの地位の低下を引き起し、エンジニアUIデザインをしたがる動機を創り出している。 Googleは、「エンジニアの会社」という皮をかぶった「企画・マーケティング・デザイン」の会社である。 エンジニアよりデザイン能力の低いダメデザイナーがうじゃうじゃでてくる構造。 優秀な人ならデザインスキルがなくてもいいデザインができるのは幻想。現実には、デザインスキルの差は容易には超えられない壁。 デザイナーに必要な技術的知識とエンジニア技術的知識は別物なので、エンジニア技術力はデザインをする上でそれほど強みにならない。したがって、技術力とデザイン力を兼ね備えた優秀なデザイナーはエンジニアとデザイナーのハイブリッドではない。 一人の人間がUIのデザインと実装を両方やると二兎を追うものになってUIの質が低下する。二兎を追

    分裂勘違い君劇場 - エンジニアがUIデザインしたがる本当の理由
    DSLer
    DSLer 2009/08/03
    すごい的を射ている
  • 正規表現 - Wikipedia

    出典は列挙するだけでなく、脚注などを用いてどの記述の情報源であるかを明記してください。 記事の信頼性向上にご協力をお願いいたします。(2023年11月) 正規表現(せいきひょうげん、英: regular expression)は、文字列の集合を一つの文字列で表現する方法の一つである。正則表現(せいそくひょうげん)とも呼ばれ、形式言語理論の分野では比較的こちらの訳語の方が使われる[1]。まれに正則式(せいそくしき)[2]あるいは正規式(せいきしき)と呼ばれることもある。 もともと正規表現は形式言語理論において正規言語を表すための手段として導入された。形式言語理論では、形式言語が「正規言語であること」と「正規表現によって表せること」は同値である。 その後正規表現は単機能の文字列探索ツールやテキストエディタ、ワードプロセッサなどのアプリケーションで、マッチさせるべき対象を表すために使用されるよう

  • 気まぐれな戯れ言の部屋 バックナンバー9

    各辺の内側判定による内外判定 前回の所で、外積を用いて直線の左側・右側を判定する手法を紹介しました。 これを利用して点の内外判定を行います。 例えば、下のような例を考えるとわかりやすいかと思います。 左の三角形の辺を、AB、BC、CAと右回りになるように辺を見ていきます。 三角形の中の点Pは、各辺の常に右側にあることがわかります。 点QはBC、CAの右側になってはいますが、ABの左側にあります。 逆にAC、CB、BAと左向きに回ったときは点Pは常に左側にあります。 要は、「辺をぐるっと回った時、常に点が同じ側にある→多角形の内側にある」と言うことが出来ます。 左の図の例では、点Pは右回りに辺を回った時常に右側にあります。 右回りに回った時に常に左側にある、と言う事はありえません。 上の図を見て、右回りに回った時常に左側に来るという領域は存在しない事がわかります。 そのため、実際は辺を左回り

    DSLer
    DSLer 2009/07/13
    包含関係判定
  • テクノロジー : 日経電子版

    遺伝子を効率よく改変するゲノム編集研究の第一人者で米ブロード研究所のフェン・チャン主任研究員は、エボラ出血熱やジカ熱の早期診断技術を開発したことを明らかにした。ウイルスの遺伝情報が…続き 受精卵のゲノム編集、なぜ問題 優生思想と表裏一体 [有料会員限定] ゲノム編集品 販売容認、条件満たせば安全審査なし [有料会員限定]

    テクノロジー : 日経電子版
    DSLer
    DSLer 2008/07/28
    ひえええええええすげええええええ
  • http://headlines.yahoo.co.jp/hl?a=20080722-00000027-maip-brf

    DSLer
    DSLer 2008/07/23
    これをきっかけに、プログラミング技術の飛躍的革新を望む。できないんだろうから悲しいけど・・・。
  • C言語をブラウザで実行、Ruby/Python/Perlも然り | エンタープライズ | マイコミジャーナル

    Mozillaの研究部門に所属しているAtul Varma氏のブログにおいて、Running C and Python Code on The Webのタイトルで興味深い内容が紹介されている。タイトルだけ見るとWebアプリケーションでC言語やPythonのコードを実行すると言う話のようだが… 同氏のブログによれば、Adobe Systems, Scott Petersen氏が現在C言語で作成したコードをTamarin仮想マシンで実行できるようにするツールチェインを開発しており、近々オープンソースソフトウェアとして公開するという。TamarinはAdobeからMozillaへ寄贈されたJavaScriptエンジンだ。Firefox 3.0には取り込まれていないが将来的にはTamarinベースのJavaScriptエンジン実装がFirefoxに取り込まれるとみられている。時期は未定だがFire

    DSLer
    DSLer 2008/07/12
    C言語がFlash(AVM)で動くようになるのか!いやびっくり。
  • 【ハウツー】ゼロからはじめるAdobe AIR - TodoMemoを作ってみよう (1) Adobe AIRの概要.1 | パソコン | マイコミジャーナル

    稿では、Adobe AIRを使って簡単なアプリケーションを作るまで過程を紹介します。注目の技術、Adobe AIRで何ができるのか、どうやって開発するのかを解説していきます。 Adobe AIRとは? 今後、最も期待している技術は何かと5つあげていくと、その中に必ず入るのが、「Adobe AIR」です。Adobe AIRは、アドビシステムズが開発したデスクトップアプリケーションの実行環境です。 AIRが面白いのは、これまで使ってきたWebアプリケーションの技術HTML/JavaScriptやFlash/Flexを利用して、デスクトップアプリケーションを作ることができる点にあります。もし、これまでに、HTMLやFlashで何か作ったものがあれば、それを、簡単な作業で、デスクトップアプリケーションとして公開することができるのです。ちょっと手を加えるだけで、Webで動くアプリケーションと、デ

  • AS3.0 で 3D プログラミングを1から勉強する (2) - 行列の導入 - てっく煮ブログ

    asこのまま実装を進めていくとソースが複雑になりそうなので少し地盤を固めておこう。座標計算を簡潔にするために行列クラスを導入する。Matrix3D クラス前回は軸の周りの回転を公式 p.x = Math.cos(rad) * x + Math.sin(rad) * y; p.y = -Math.sin(rad) * x + Math.cos(rad) * y; を使って直接計算していたけど、ここを行列に置き換えてみる。ちょうど、3D ライブラリ FIVe3D 2.1 に Matrix3D クラスがあったのでこれを借用した。X軸周りに rad ラジアン回転する演算は次のように書けるようになる。 // 回転前の点 p1 を定義 var p1:Point3D = new Point3D(0, 10, 20); // rad ラジアン回転する行列を作成 var matrix:Matrix3D =

  • 第3回 プロコンを越えて

    筆者が4年間にわたって参加してきた「プロコン*1」を通しての様々な活動を紹介するこの連載。今回でいよいよ最終回です。前回は,筆者が所属する津山高専システム研究部*2が,2003年のプロコンでもろくも敗北したものの,様々な挫折と困難を乗り越えて,2004年のプロコンで再び最優秀賞・文部科学大臣賞を受賞してリベンジを決めるまでの過程を紹介しました。 この最終回では,筆者が4年間にわたるプロコン生活の集大成として挑んだ,最後のプロコンへの取り組みと,その先のステップへ歩き出そうとしている筆者とシス研の姿を紹介します。 できたこと,できなかったこと 2004年のプロコン第15回大会。“コミュニケーション”というテーマを題材にした作品「windWorks*3」でリベンジを決めたシステム研究部プロコンチームは,その喜びと感動を胸に津山へと戻りました。高専の友人たちは筆者たちを暖かく迎えてくれました。地

    第3回 プロコンを越えて
  • 第3回 varによる変数宣言とコレクション初期化子(1/4) - @IT

    と書くこともできる。 このような機能に対しては、過剰な肯定と、過剰な否定という2つの典型的なリアクションがしばしば見られるように思う。 過剰な肯定とは、LL(Lightweight Language、軽量プログラミング言語)の信奉者などに見られるものである。彼らは、型をソース・コード上に明示せず、実行時に動的に型を扱うことがよいと主張することが多い。上記のような構文は、型の解決がコンパイル時から実行時に遅延されたかのように見えるために、C#が静的に型付けされた言語から、動的に型付けされた言語に変わったかのように見えることがある。 一方、過剰な否定とは、Visual Basic(以下VB)におけるVariant型の悪夢再来と受け止めるタイプである。この件は後で詳しく説明する。 この2つはいずれも誤解でしかないので、誤って思い込むと、C# 3.0をうまく扱えないワナにはまり込むリスクがある。そ

    DSLer
    DSLer 2008/06/16
    それなんてLL
  • 開発者注目のはてなブックマーク@CodeZine

    CodeZineについて プログラミングに役立つソースコードと解説記事が満載な開発者のための実装系Webマガジンです。 All contents copyright © 2006-2008 Shoeisha Co., Ltd. All rights reserved. ver.1.5 掲載記事、写真、イラストの無断転載を禁じます。 記載されているロゴ、システム名、製品名は各社及び商標権者の登録商標あるいは商標です。

    DSLer
    DSLer 2008/06/05
    便利そうなので早速使わしてもらいます
  • 言語のGC機能と参照カウント (前編) - moriyoshiの日記

    たまにはちゃんと書いたほうがいいかなと思って書いてみる。 あらまし 原始的な参照カウントベースのガーベジコレクションは、循環参照が発生すると、その参照に含まれるオブジェクトを回収できないという厄介な問題を抱えている。循環参照とは、1つ以上のオブジェクトが環状の参照関係を形成している状態のことで、このような参照を持つオブジェクトは、やがてルート (ある時点で言語ランタイムが管理しているすべてのスコープと考えてもいい) から辿りつけなくなって、解放されずにリークしてしまう。 この問題はいろんな LL 言語に見られる。 Perl の場合 use Devel::Peek qw(Dump); sub make_circular { my $foo = {}; my $bar = {}; my $baz = {}; $foo->{'bar'} = $bar; $bar->{'baz'} = $baz;

    言語のGC機能と参照カウント (前編) - moriyoshiの日記
  • プログラミング言語にとっての成功とは? | スラド デベロッパー

    RubyPythonとその仲間達がJavaを追いやって死に至らしめる13の理由・・・死因は老衰(13 reasons why Ruby, Python and the gang will push Java to die… of old age)」という記事では、様々なプログラミング言語が普及めざして奮闘する模様の興味深い分析が展開されている。広く使われるようになるプログラミング言語は一体何が違うのだろうか? 「いい」言語とは何だろうか? プログラミング言語が成功するとはどういうことを指すのだろうか? COBOLは成功したといえるだろうか? RubyPythonなどについてはどうだろう? /.Jの皆様がお使いのプログラミング言語は「いい」言語ですか? どんな言語が、どのように「成功」していると言えるでしょうか?「いい」と思うのに「成功」していないと思う言語などありますか?/.Jの皆様

  • Perl-users.jp - 日本のPerlユーザのためのハブサイト

    Perl Mongers Perl Mongers とは、日各地に存在する、Perl ユーザーのコミュニティのことです。各種イベントが行われていますので、是非参加してみましょう。 Shibuya.pm Fukuoka.pm Kansai.pm (@kansaipm) Yokohama.pm (@yokohamapm) Hokkaido.pm (@hokkaidopm) Nagoya.pm (@nagoyapm) Kushiro.pm (@kushiropm) Kyoto.pm (@kyotopm) Kamakura.pm Niigata.pm (@niigatapm) Sendai.pm (@sendaipm) Tokyo.pm Hachioji.pm (@hachiojipm) Chiba.pm (@chibapm) Yomitan.pm (@yomitanpm) Machida.pm

    DSLer
    DSLer 2008/05/25
    ハブサイト?
  • プログラミングとアプリ開発の違い : 404 Blog Not Found

    2008年05月19日11:45 カテゴリYAPC::AsiaLightweight Languages プログラミングとアプリ開発の違い ああ、YAPC::Asia::2008のトリ、Perl Is unDeadを見せてあげたかったなあ。 プログラミングのジャンルと難易度(および Web プログラミング批判) - 黎明日記 だってそうだろ? 「 Web アプリケーション」なんてカッコイイ名前の割に、受け取ったデータを簡単に加工してデータベースに突っ込んで取り出して……それで終わりじゃないか。ビデオやスライドが上がるまでしばらくかかると思うので、とりあえずは以下をご覧あれ。 はてなブックマーク - タグ yapcasia2008 Simon Cozens - YAPC Asia and talking in Japan YAPC::Asia 2008 2日め - てきとうなメモ で、Sch

    プログラミングとアプリ開発の違い : 404 Blog Not Found
    DSLer
    DSLer 2008/05/19
    Re:プログラミングのジャンルと難易度(および Web プログラミング批判) - 黎明日記