《俺は、電脳世界が好きなだけの一般人です》第五話 勉強會3

1週間が経過した。

戸松先生の話では、ダメ出しをけた電脳倶楽部は、報を集めて、スケジュールの立て直しを行ったらしい。

仕様も、見直しが行われて、インターフェースをしっかりと考えたようだ。

データベースのAPIは直接接続にしている。

APIとフロントエンドは、JSON形式でやり取りをすると決めたようだ。認証は、ワンタイムのパスワードを発行して使うようだ。認証を得るために、換する鍵を使うようだ。アプリ側にも鍵を持たせて、お互いに鍵を換してから、ワンタイムのパスワードを発行する。

パスワードでオープンしたセッションが切れるまでがパスワードの有効期限としていたので、危ういと考えて、もうし融通を持たせるようにした。その上で、クライアント側に、ブラックボックスになるパスワードの解読を行うモジュールを提供するように変更する。これで、経路のハッキングが行われても、パスワードを利用するのは難しい。

さらに、通信を暗號化すればいいだろう。

Advertisement

システムの基本方針は決まった。

クライアントも、スマホのアプリは除外して、Webサービスとして実裝する。”スマホからのアクセス出來ないようにする”という制限は外すが、端末を登録しなければ、アクセスが出來ないようにする制限は継続する。

電脳倶楽部との仕様の打ち合わせは、1時間ほど必要だった。

スケジュールの確認や、人員の配置に関しても確認できたので、作業にることができる。

殘り、30分は勉強會だ。

宿題を出しているが、苦戦しているのが解る。特別授業が始まる前に、ヒントは出している。

一番時間がかかっている場所を特定して、その部分の改良を行う。

簡単に書いているが、難しい容でもある。

プログラムの基礎となる命令文の説明をまとめた冊子は渡してある。

それを読めば簡単に答えに到著する。

ループ出と、ループ開始數値を的に切り替える。あとは、ループのカウントアップを工夫すれば、かなりの速度アップが行える。

Advertisement

素數の計算なのだかが、2以外の2の倍數は排除できる。同じく、素數となったの倍數は排除できる。

あとはループの回數をどうやって減らすかを考えればいい。

見て回るが、まだ苦戦しているが、電脳倶楽部の面々も考えたことがないのだろう。試行錯誤を繰り返している。

ある程度は、最適化出來ているけど、もうし時間が必要かもしれない。

「戸松先生」

「ん?」

「先生は、今日”も”暇ですよね?」

「あ?」

「そんな喧嘩腰にならなくても・・・」

「篠崎。俺は、売られた県下なら、相手が誰でも買うぞ?」

「はい。はい。それで、時間はありますよね?」

「・・・。あぁ」

「どの程度、延長できますか?」

「ん?あぁそうだな。2時間・・・。いや、部活の時間を考慮すれば、3時間は大丈夫だ」

「お願いします。俺は、最初の30分だけ付き合ってから、生徒會に顔を出して、帰ります」

「おまっ・・・。そうだな。わかった」

戸松先生は、俺が見ている先を見て納得してくれた。

勉強會に參加しているメンバーは、良く言えば”真面目”なのだ。だから、俺が居ると、ネットで報を見ようとしない。調べようとしないのだ。それが悪いとは言わないが、せっかく調べられる環境にあるのだから、調べたほうがいいに決まっている。

それを戸松先生に言ってもらいたいと考えたのだ。

それだけではなく、何かの試験だと思っているのか、一人で黙々と作業をしている。

すごいとは思うが、せっかく同じ方向を見ている者たちが近くに居るのだから換をすればいい。最終的に、出し抜く方法を考えればいいだけなのだ。

電脳倶楽部の面々は、仕様書にGOがかかってからは、最適化を行い始めている。話し合いながら、騙しあいながら、虛実を混ぜながら、コードを改変している。

俺は、十倉さんや勉強會に參加しているメンバーからの質問に答えてから、パソコン室を出た。

ユウキは、先に帰るとメッセージがっていた。

今日も、和さんの手伝いをするようだ。

基地にって、仕様書を眺める。一度、説明はけたが、見直すことで細部まで考えることができる。

問題は見つからない。

スケジュールにも余裕があるように思える。

あっメンテナンスや非常事態の対応が考えられていない。

どこで吸収したほうがいいのか、API以外には考えられないが、APIでは対処が難しい。

フロントエンドの為のライブラリに、手を咥えるのが良さそうだな。

方針をメモする。

テスト要員とテストパターンが書かれていないけど、難しいだろうな。

実際にサービスを始めてみたいとわからない部分が多いだろう。

さて、書かれていない部分で、バックアップサーバと開発サーバを用意させる。パソコン倶楽部から押収したパソコンがまだ遊んでいるはずだから、あれを開発サーバにすればいいスペックは、劣っていても開発サーバには十分だ。いくつかのパターンで用意しておいたほうがいいだろう。

あとは、仕様書として纏めるのなら、使うモジュールのバージョンを記載しておいたほうがいいだろう。

後日、構を変えなければならない時にも參考になる。それだけではなく、再現のある問題を調べる手立てにもなるだろう。

まとめて、戸松先生に送っておけばいいだろう。

今日は疲れたから、さっさと寢てしまおう。

翌日に、戸松先生から返事が來て、電脳倶楽部が俺の指摘をけ取って修正を行う。二日後に、修正版が送られてきた。

次の特別授業までの間、俺もソースコードを最適化してみる。

正解ではないが、早くできることを示しておく。

スレッドを使えばもっと早くなるのはわかっている。しかし、スレッドは反則なじがするから使わないでソースを仕上げよう。

2時間くらいかかったが、満足ができるくらいには、綺麗なソースになった。

オヤジが言っていた”最終的にはマシン語にしなければ速度を追求できない”がよく分かる。今回は、そこまで速度を求めない。俺が作ったソースよりも早いがいたら、それは素直に褒めよう。

それに、もう眠くなってきた。

ユウキはまだ帰ってこないから、ソファーで寢よう。寢室まで移するのが面倒だ。

特別授業の當日までに、電脳倶楽部からは修正された仕様書に沿って、サーバの用意から始めた。

外部に置くためのサーバは、新品が用意されるらしい。戸松先生が、學校から予算を奪ってきていた。まずは、テストサーバと開発用のサーバを構築するようだ。勉強會に參加している者も、興味があればサーバの構築を見に行けるようになったようだ。津川先生が電脳倶楽部に頼んだようだ。

勉強會のメンバーも、ネットワークに興味を持ってくれたらプログラムの幅が広がる。

放課後、時間がある者は電脳倶楽部やパソコン室でプログラムの改変を行っている。プログラムは最初の一歩が難しい、それを乗り越えれば、コツの様なが見えてくる。考え方がわかれば、プログラミングは難しくない。

そして、特別授業の當日になった。

俺は、約束しているUMPCを3臺持って、パソコン室に向かった。

今日は、ソースコードの発表會になるのだが、公平にするために、プロジェクターに繋がる一臺で皆がコンパイルして実行して、結果を競う。

まずは、參加者がソースコードをコンパイルしてバイナリを作する。

テストもしてきているのだろう、コンパイルが通るのは、當たり前で、実行結果が正しいのも當然なのだ。5回起して、一番速いタイムと一番遅いタイムを除いた3つの合計タイムで競うことにする。

タイム計測は、発表會に參加しない者たちが擔當する。

1時間かけて、參加者のタイム測定が終了した。

やはり、予想通り、上位は電脳倶楽部のメンバーに占められていた。

十倉さんは、ソースコードは仕上げてきたが、発表會には參加しないようだ。

あとで、こっそりとコンパイルして確認してみる程度で十分だと笑っていた。

    人が読んでいる<俺は、電脳世界が好きなだけの一般人です>
      クローズメッセージ
      あなたも好きかも
      以下のインストール済みアプリから「楽しむ小説」にアクセスできます
      サインアップのための5800コイン、毎日580コイン。
      最もホットな小説を時間内に更新してください! プッシュして読むために購読してください! 大規模な図書館からの正確な推薦!
      2 次にタップします【ホーム画面に追加】
      1クリックしてください