オフィスブログ

プログラムの中にプログラム?(3)

(この記事は前のブログ記事の続きです)

当時、仕事でプログラムを書く時はFORTRAN(フォートラン)を使っていました。Pascal(パスカル)でプログラムを書くことはありません。

まあ、仕方ない。

こんにちは。ディーキャリアITエキスパート名古屋丸の内オフィスの志村です。

そうやって仕事をしていると、仕事場(当時は名古屋大学プラズマ研究所の計算機センターにいました)にUnixワークステーションが導入されました。

真新しいコンピュータです。しかも聞くと何百万円とかするようです。パソコンに比べたら、すごく高価です。

でも当時、プラズマ研究所の計算機センターにこれを使える人がいませんでした。

何故、このワークステーション買ったの?と思っていました。

ここでは、皆が富士通の大型計算機を使っていましたから、Unix(ユニックス)を知っている人がほとんどいません。

誰かが使えば良い・・・新しい技術を根付かせるために買った。買ってみた・・・ようです。

それで実はパソコンのMS-DOSはUnixに似せて作られたOSでしたから、ためらいがちにですが手を上げました。

使えそうな気がしたのです。

(結果的に、コマンドとファイルシステムは似ているので何とか使えました)

Unixワークステーションを使ってみます。

『まずはワークステーション上で何かプログラムを動かしてみなさい』という指示がありました。

めちゃくちゃ適当な指示ですね(笑)

結局、Unixワークステーションで、C言語でプログラムを書くことになりました。

C言語は当時、先進的なプログラミング言語でした。今から40年程前のことです。

Pascalは仕事の現場ではほとんど使われませんでした。使われたのはC言語です。

C言語も、Pascalと同じような構造化プログラミング言語です。

Cプログラミングは、最初、難しかった。リッチーという人の書いた「プログラミング言語C」という本がC言語のバイブルです。

読みましたが、よく分かりません。

特に配列とポインタ、構造体や共用体が分かりません(笑)

当時はよい教科書、参考書がほとんどありませんでした。

いろいろな参考書や雑誌を手当たり次第に読みあさって、自分なりにこれを習い覚えます。

その結果分かったことは、プログラミングの「考え方」を変えなくてはいけない、ということです。

C言語でプログラムを書き始めて、Cプログラムは「関数(function)」の塊であると理解しました。

function(関数)を組み上げてプログラムを作ります。

プログラムを考える時に、そのプログラムはどんな処理に「小分けにする」と良いかを考えます。

処理(関数・function)」を組み上げてプログラムを作るという発想です。

それで・・・ああ、関数というのは(プログラムの)「部品」なんだな・・・と思いました。

部品をいくつか組み上げてプログラムはできています。

その部品も、さらに別の(小さな)部品を組み上げて作られている。

これが構造化プログラミングです。「構造化」とはそういうものです。

構造化プログラミングをするために、それまでの考え方と違う考え方が必要です。

ちょっとした発想の転換です。

「順番に処理を書き連ねればプログラムは出来る」・・・から、「プログラムは小さな処理に小分けにして、まとまりのある処理をいくつか組み上げて出来ている」・・・という発想に変える訳です。

さて、皆さん、最初の発想の転換を受け入れましょう。

プログラムの中に(いくつかの)プログラムがある。小分けにした(小さな)プログラムの中にも別の小さなプログラムがある。

「次は何をするか」を考えるのではなくて、「どういう部品(実際は関数ですが)があれば良いのか」・・・と考えます。

部品を考えると言いますが、最初、部品の中身がまだ分かっていないこともあります。

ちょっと面白いでしょ。中身はまだよく分からなくてもよい・・・でも、こういう部品があればプログラムは動作すると考えます。

部品が十分小さくなったら、ようやくその中に命令を書き連ねます。

小さくなっているので分かり易く、作り易いのです。

さて、この部品は再利用ができます。同じ機能が必要であれば、これをそのまま別のところに持って行っても使えます。

また、もし何か(仕様が)変更になる場合、関係する部品を見つけてその中で変更をすれば良いのです。

または「部品を取り換え」れば良い。

「構造化」することで品質も効率も大きく向上しました。プログラミングの革命だと思いました。

でも、この後、時代は「オブジェクト指向」になります。

「構造化」から「オブジェクト指向」へと移り変わっていきます。

それはまた別の記事で紹介しますね。

わたしはディーキャリアITエキスパート名古屋丸の内オフィスにいます。どうぞ、よろしく。


ディーキャリアITエキスパート名古屋丸の内オフィス 
 ・電話052-218-4877
 ・メール it-nagoyamarunouchi@dd-career.com 
 ・所在地:〒460-0002
      愛知県名古屋市中区丸の内2-17-22丸の内桜通ビル2階
 ・HP:https://dd-career.com 


ITエキスパート名古屋丸の内のブログ一覧

  1. SESとはどういうものなの?

  2. ペースとサイクル

  3. う~ん、どうしよう。chatGPT4.0

  4. コントロールできる、できない

  5. オブジェクト「指向」って何よ?(笑)

  6. 回り道しても、安定した就労の近道に

  7. プログラムの中にプログラム?(2)

  8. プログラムの中にプログラム?(1)

  9. 梅雨時期のネガティブを切り替える

  10. ざっくり言うと、プログラミングは・・・

  11. 少しずつ少しずつ

  12. プログラミング(学習)”以前”

  13. 一度で解決しなくても、大丈夫♪♪

  14. 長年の勘・・・ですけどね(苦笑)

  15. 心の余裕と健康

  16. クラスとインスタンス・・・て何?

  17. 仮想と現実・・・マトリックス?アバター?・笑

  18. 安定して働きつづけるために、大切なこと

  19. ディーキャリア卒業におけるプレゼンテーション

  20. 地味にスゴイ・・

  21. 入口と出口が問題なんですよ。

  22. OSのお話(その2)

  23. 生活リズムを整える=安定した就労への近道

  24. OS(オペレーティングシステム)のお話

  25. チャンスは何度かやってくる

  26. 大事なのは変わっていく事…変わらずにいること

  27. 気付きと活かしの宝庫、ライフスキル訓練

  28. 発達障害のある方におすすめの引っ越し先1選+α

  29. 2024年のディーキャリアITエキスパート名古屋丸の内オフィス

  30. 自分について想う

  31. 派遣の話・・・IT業界ではね・・

  32. 2023年を振り返って

  33. コミュニケーションにおける態度や心構え

  34. IT企業から見た時、何が目につくのか・・・

  35. 問題解決 ~勤怠の安定~

  36. ライフスキル訓練における意識 

  37. Windows前と後でプログラムは変わったんです・・・

  38. 時間

  39. COBOLをどう思います?

  40. 特性や診断と向き合う自己理解

  41. ポートフォリオ? ああ、作品集・実績ですね

  42. ポートフォリオはできました・・で、どうする?

  43. 全体訓練=ライフスキル訓練の利点

  44. たまには・・・意味のない?お話も、実は意味がある・・(^_-)-☆かもね

  45. やりっぱなしにはご注意を!

  46. プログラミング「技術」って・・・

  47. プログラミング学習するにはどの言語?

  48. 発達障害の診断は自分に正直なしるし

  49. 短期回復と長期回復

  50. ごほうび効果

  51. プログラミング、はじめの一歩・・・

  52. 「業務アプリ」を使う理由(ワケ)

  53. 仕事ができるようになるには

  54. 就職する、がゴールではないですよね??

  55. パソコンなんか、何に使うの・・・

  56. chatGPT(チャット君)ありがとね〜

  57. ファイルシステムのお話

  58. どんなライフスキル訓練も自己理解に繋がっていますね?

  59. それでも、受かること、あるからねぇ・・・

  60. 今度は疑似言語ですよ・・おお、構造化プログラミングだね

  61. まず、やってみよう・・・それからだよ

  62. 設計するって何する?

  63. 派遣、SES、請負・・え?出向なの?

  64. ゆる〜い関係もまあ良しか・笑

  65. 就職では「人となり>技術力」かな・・・

  66. 想い続ける・・・いいね

  67. クラウド(雲)時代を生きる

  68. 今や、インターネットは一般用語ですね。

  69. この夏にやってみたいこと

  70. 水で通信しよう・・・

  71. 夏のセルフケア ~水分摂取の巻~

  72. (世の中の)歯車なんだよね・・・

  73. 「知っている」と「活用する」ことの違いについて

  74. フリーは、い〜な

  75. ITを活用する人になろう

  76. システムエンジニアなんですけど・・・

  77. 大きなシステムだって・・・分かってる?

  78. ある利用者からの質問

  79. 天気と気分・視点の変え方

  80. 自己肯定感を取り戻す

  81. 夢が叶う時…

  82. 何が大事って、安定した勤務です

  83. 梅雨時期の乗り越え方

  84. オタクですが・・・なにか(笑)

  85. IT人材は不足しているそうです

  86. 感情とその気付き

  87. ライブラリィ・・・ん?

  88. 3分間スピーチと自己開示

  89. 暗号化ってどうよ・・・

  90. 宣言効果と目標設定

  91. chatGPTは社会を変える?

  92. ネモフィラとセルフケア

  93. はなまる

  94. 報連相について

  95. ショックとのおつきあい

  96. 体調管理

  97. 発達障害のある方にお勧めするお金の管理法3選

  98. Iメッセージ

  99. 就職活動

  100. 負ける強さ

  101. 発達障害とお片付け

  102. ADHDのリスクとリターン

  103. しだれ桜

  104. スティーブ・ジョブズに学ぶ、もののとらえかた

  105. やすむこと

  106. “今、ここ”を意識することの大切さ

  107. 春の訪れ

  108. おかげ

  109. 心の防寒

  110. 立春

  111. 自己理解について

  112. アロマテラピーと自己理解

  113. 大寒波

  114. ホッと温かい寒さ対策

  115. 遅くなりましたが

  116. 自己理解、一歩踏み込んで

  117. 2023年は卯年

  118. 2022年を振り返って

  119. 年末にすること

  120. あっという間の1年

  121. ディーキャリアITエキスパート名古屋丸の内オフィス、配置変えの巻

  122. 冬の早朝

  123. 寒い中で気付けること、感謝できること

  124. 逃げること、回避すること

  125. 寒い季節の悩み

  126. 目的を持って取り組むこと

  127. ものの見方は自分次第、捉え方は2つ以上ある

  128. 最近のセルフケアと癒し時間

  129. 切り替えて別の案を考えること、満喫すること

  130. 毎月の目標設定

  131. 生活リズムを整えるには・・・

  132. コツコツと、ささやかな習慣化

  133. 秋の楽しみ、そして、セルフケア

  134. 楽しみ方

  135. 働く上で大切にしていること

  136. 睡眠の質

  137. 衣替え

  138. 雑談について

  139. 色とセルフケア

  140. 季節の変わり目

  141. アサーティブとは、しずかちゃん!

  142. 5分間のホッとする時間

  143. ライフスキルコースについて

  144. ビジネスマナー 右手を隠す編

  145. BGMの活用

  146. 仕事を楽しむには

  147. 雨の日の気分転換

  148. 開所4か月目

  149. セルフケアって何だろう?②

  150. ビジネスマナー

  151. セルフケアって何だろう?

  152. ITエキスパート名古屋丸の内スタッフ紹介! ②イケメンカリスマ営業マン(^_-)-☆

  153. ITエキスパート名古屋丸の内スタッフ紹介! ①システムエンジニア サービス管理責任者

  154. 発達障害特化とは(^_-)-☆

  155. オフィスのおすすめポイント② (^_-)-☆

  156. ITエキスパート名古屋丸の内オフィス 4月1日開所しました(^^)/

オフィス情報

ITエキスパート名古屋丸の内オフィス

アクセス
名古屋市営地下鉄 桜通線/鶴舞線「丸の内駅」3番出口すぐ
電話番号
052-218-4877