シェルスクリプトで最初にサブコマンド関数をいくつか定義して最後にメイン処理書くのってきしょくないですか?
この書き方のメリットとして例えばsh -iのように対話的にデバッグができるとか、そもそもRuby、Python、Perlで伝統的に使われてきたとかが思い付くんですが、この書き方は駄目だとPOSIX原理主義の提唱者であるリッチー大佐という者が書籍「はじめてのPOSIX原理主義」で主張していました。あと、ユニケージ開発手法でも言われてる気がします。
その書籍とユニケージの手法では「1行書くたびにデバッグをする」「変数になにかを代入するのは極力避けたりelse文は避けるようにしたりしてパイプで数珠繋ぎのようにコマンドを繋げる使い方にする」「1ファイル1コマンドとし、サブコマンドなんてものはもはや別ファイルとして実装する」とかと薦められていて私はこちらが気に入っています。
一方で、シェルスクリプトを現代化する的な取り組みをしてるプロジェクトがあるのも事実であります。例えばモジュールっぽいものを実装したりテストツールを作っていたりとか。ko1nksmさんの取り組みが良い例だと思います。
皆様はどう思いますか。
なお、私はIT企業に就職できませんでした。それから今もなおシェルスクリプトでできる仕事どころかプログラミングの案件をやったことがないという現状が続いております。プログラミングを真面目にやっていたのは学校で機械学習を使った研究をしてたのが最後でありそれ以降はほぼお遊びだと考えています。
No.1ベストアンサー
- 回答日時:
プログラムは、なんらかの目的を達成するために作成します。
その目的の難易度、環境、使用する言語などによって、作り方は色々あると思う。その結果として、できあがったプログラムの解読が難しいとか、変更がやりにくいなど、あるかもしれません。
その結果として、「○○は嫌い!」とか「○○はきしょい!」って意見が出てくるのは仕方ないですね。
働いて、お金をもらうわけだから、好きじゃあないこともやらなくてはいけないことがあります。仕事って、そんなものでは?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- IT・エンジニアリング シェルスクリプトは誹謗中傷対象ですか? 3 2022/04/22 09:40
- 大学受験 大学受験における文理選択についての質問です。 現在高校1年生の身分なのですが、私の高校ではこの時期に 4 2021/12/12 01:36
- その他(プログラミング・Web制作) Linuxについて質問です。 引数に指定されたアクセスログのファイルからアクセス数が多い順に上位3つ 1 2023/02/03 03:46
- 実用・教育 大学4年生です。論文を執筆する時期になります。 そこで「直接引用」「間接引用」「要約」が悩みの種です 1 2021/11/06 23:40
- 会社・職場 『退職時に嫌な上司を道連れにする方法を教えてください。(言いたいこと纏ってないので長文で駄文です)』 4 2021/10/31 11:45
- 文学 学術論文について 論文を「当事者の求める支援と行政の支援が合っているか。求められる支援がなされている 7 2021/12/16 19:38
- Excel(エクセル) マクロ作成で困っています。お教え頂けませんか。 1 2021/12/12 17:02
- 転職 履歴書の本人希望欄 4 2021/12/16 16:55
- 転職 30代求職中の独身女です。以前から憧れていた、図書館司書に転職しようか迷い中です。大学時代に司書資格 3 2021/11/07 18:31
- 相続・贈与 名義変更について 1 2021/12/27 17:42
このQ&Aを見た人はこんなQ&Aも見ています
-
新NISA制度は今までと何が変わる?非課税枠の拡大や投資対象の変更などを解説!
少額から投資を行う人のための非課税制度であるNISAが、2024年に改正される。おすすめの銘柄や投資額の目安について教えてもらった。
-
Javaって使いますか、もう古いですか?C++とどっちがいいですか?分析でC++使う授業ありましたけ
C言語・C++・C#
-
C言語について。
C言語・C++・C#
-
C言語 バッファについて。
C言語・C++・C#
-
-
4
プログラマーがHTMLとCSSでウェブデザインをするのは大人の幼稚園なんじゃないかと思い込んでる
その他(プログラミング・Web制作)
-
5
コマンドプロンプトについて。
C言語・C++・C#
-
6
プログラミングで詰まった時って皆さんどうしていますか?
その他(プログラミング・Web制作)
-
7
C言語関数違いについて。
C言語・C++・C#
-
8
C言語について。
C言語・C++・C#
-
9
ホリエモン ひろゆきはプログラマーになればお金が儲かると言いますが嘘で? IT土方というのは正しい
その他(プログラミング・Web制作)
-
10
C言語について。
C言語・C++・C#
-
11
HDDのファイルが知らないうちに削除されてしまいました
Windows 10
-
12
良いプログラム、悪いプログラムの条件
その他(プログラミング・Web制作)
-
13
C言語です
C言語・C++・C#
-
14
変数名を引数として渡す、アドレスを引数として渡す方法
C言語・C++・C#
-
15
フォルダを自動作成・移動を複数ファイルに対して行うバッチ処理について
その他(プログラミング・Web制作)
-
16
c#のTLS1.2での通信について
C言語・C++・C#
-
17
至急。PCに詳しい人助けてください。 どうしても開きたいTSVファイルがあります。(圧縮済みで75,
Windows 10
-
18
C++でデスクトップGUIアプリ開発の環境について
C言語・C++・C#
-
19
VisualStudioでのプログラミングにおススメのデータベース
C言語・C++・C#
-
20
プログラミング言語の制作方法について
C言語・C++・C#
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
バッチ終了時にDOS窓を閉じるコ...
-
make test って何をするための...
-
ショートカットをデスクトップ...
-
コマンドプロンプトをクリック...
-
ftpコマンドを実行すると「425 ...
-
シェルの「:コマンドが見つか...
-
Rubyを使っての tar.gz ファイ...
-
コマンド プロンプト
-
DOSコマンドで指定日数よりも過...
-
コマンドプロンプトで、特定の...
-
バッチファイル 文字列にスペ...
-
バッチコマンドのIF文(条件...
-
シェル(sh)で実行コマンドを標...
-
AccessVBAで実行時間を指定する...
-
DOSコマンドに詳しい方、お知恵...
-
コンピュータ名をファイル名に...
-
C言語で、string.h conio.hを使...
-
2つ目の「pause」は無効?
-
ftpのタイムアウト指定
-
“chmod”のカタカナ読みを教えて...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
バッチ終了時にDOS窓を閉じるコ...
-
バッチファイル 文字列にスペ...
-
ショートカットをデスクトップ...
-
コマンドプロンプトをクリック...
-
ftpコマンドを実行すると「425 ...
-
make test って何をするための...
-
バッチコマンドのIF文(条件...
-
シェルの「:コマンドが見つか...
-
findstrでヒットした1行前の文...
-
コマンドプロンプトで、特定の...
-
バッチファイルを使ってテキス...
-
AccessVBAで実行時間を指定する...
-
SSH接続でwindowsサーバのコマ...
-
DOSコマンドで指定日数よりも過...
-
コマンドプロンプトでファイル...
-
FTPの連続実行でフリーズする
-
コマンドプロンプトのバッチで...
-
シェルからpsqlコマンドでトラ...
-
フォルダ、ファイル操作に最適...
-
VBSでタイマー
おすすめ情報