質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
Nim

Nimは、静的型付けプログラミング言語。Pythonの生産性でありながら、C言語のような高いパフォーマンスも持ち併せます。さらに自由度の高い言語で拡張性も重視されています。

Q&A

解決済

1回答

1219閲覧

Nmでチームでの統一感を出す方法はありますか?

cloud9paiza

総合スコア70

Nim

Nimは、静的型付けプログラミング言語。Pythonの生産性でありながら、C言語のような高いパフォーマンスも持ち併せます。さらに自由度の高い言語で拡張性も重視されています。

0グッド

0クリップ

投稿2020/02/24 03:02

なお、こちらで、回答して頂けましたら、私のブログ http://aon.tokyo へ引用もしくは転載したいです。転載の許可をして下さるかどうかも記載して 頂けますと助かります。

チームでの統一感を出す方法はありますか?
Nimは、個性豊かに優雅にソースコードが書けてしまう欠点があります。
それを補う方法は何か御座いますか?
開発にあたって、チームでの会議や打ち合わせ回数が少なくて済む方法があるかどうか?
中には、個性豊かにソースコードを書いてしまい、チームでソースコードレビューをすると、
後で、やり直しの出戻りを防ぐ何か良い方法はありますでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Zuishin

2020/02/24 03:22

Nim が個性豊かに優雅にコードが書けてしまう出典がありません。もし Nim のスローガンである「Efficient, expressive, elegant」のことであるなら、それはあなたの想像しているものと全く別物だと思います。
Zuishin

2020/02/24 03:25

https://nim-lang.org/ > Expressive > Nim is self-contained: the compiler and the standard library are implemented in Nim. > Nim has a powerful macro system which allows direct manipulation of the AST, offering nearly unlimited opportunities.
Zuishin

2020/02/24 03:54 編集

expressive は「個性豊か」ではなく「表現力豊か」という意味です。「表現力豊か」というのは、バッチや SQL のような特殊な用途に特化した言語ではなく、Nim を使って簡単に様々な種類のソフトウェアを作ることができることを指しています。 その一例として、Nim のコンパイラと標準ライブラリが Nim 自身で記述されていることを示し、また AST(抽象構文木)を直接扱えるメタプログラミングができることを記述しています。
dodox86

2020/02/24 03:57

> Nimは、個性豊かに優雅にソースコードが書けてしまう欠点があります。 「個性豊か」(<この点はZuishinさんが誤りを指摘されていますが)と「優雅に」を「欠点」として扱ってしまう時点で齟齬が生まれている気がします。混乱の予兆を感じますね。
oikashinoa

2020/02/24 04:10

あなたのブログからの転載です。 > 勉強の為に転載しました。 本人の考察の記載すらもないですが、どこが勉強なんでしょうか? > 開発にあたって、チームでの会議や打ち合わせ回数が少なくて済む方法があるかどうか? > 中には、個性豊かにソースコードを書いてしまい、チームでソースコードレビューをすると、 実際に有った話であれば、どのような経緯だったかを書けばもうすこし意見集まると思いますよ
cloud9paiza

2020/02/24 04:40

Zuishin さん >expressive は「個性豊か」ではなく「表現力豊か」という意味です。 書く人によってバラバラで統一感を出しにくいのかと勘違いしてました。 誤解していた様です。失礼致しました。
cloud9paiza

2020/02/24 04:42

dodox86 さんへ 優雅にが欠点だと勘違いしていた様です。 ソースコードの書き方のバリエーションが豊富なのかと勘違いした様です。 失礼致しました。
cloud9paiza

2020/02/24 04:45

oikashinoa さん  他の方の文章を引用させて頂いたりしており、いつでも読めるようにして読む事だけでも勉強になっております。オリジナルのコメントがない物もありますが、まだ言葉が見つからないものも御座います。至らない点が御座います。
cloud9paiza

2020/02/24 04:46

oikashinoa さん 実際にあった話ではなく、想定になります。失礼致しました。
oikashinoa

2020/02/24 04:57

ある程度cloud9paizaさんの考えが分かりました。(否定ではないです) Blogの形で掲載(=他人にも見える)すると反発する人は居るでしょう(アクセス数かけぐためと思われても仕方ないです。) >実際にあった話ではなく、想定になります。失礼致しました。 WebAssemblyの時は今後のための検討と思いましたが、Nimの件は興味本位以前の感じがしました(正直に書くとブログネタ集め) そういった誤解を招かないように質問する事も考えたほうが良いです。質問連投しすぎで内容も?な印象が有りました。
guest

回答1

0

ベストアンサー

コーディング規約を決めてください。
以上です。

投稿2020/02/24 03:18

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

cloud9paiza

2020/02/24 07:13

コーディング規約ですね。Nimのコンパイラの標準機能のpragmaでユーザー定義も出来るらしいので、そこで、コーディング規約を反映させるオプションの様な事が出来るかも知れません。研究中です。 回答して頂きましてありがとう御座いました。
Zuishin

2020/02/24 07:23

プラグマはおそらくコーディング規約ではなく呼び出し規約の情報を見て「規約」に反応したのだと思いましたが、違いますか?
cloud9paiza

2020/02/24 09:20

プログラミングのルールをコーディングルールで決めて置いて、 プラグマのユーザー定義で、コンパイル時に反映させる事で、Nimでチームでの開発で統一感を出しやすくなると思われます。
Zuishin

2020/02/24 09:30

よく意味がわかりません。具体的なソースで言うとどうなりますか? コンパイル後のものはユーザが目にすることは無いので、それを統一する意味は無いと思います。
cloud9paiza

2020/02/24 22:53

コンパイル時にユーザー定義したプラグマでソースコードをチェックして、チームで統一感を出す事は、可能だと思います。まだ調査注意です。
cloud9paiza

2020/02/24 22:59 編集

コーディング規約を反映させたユーザー定義を使用したプラグマでコンパイルする事で、エラーやワーニングやヒントを出してチームで統一感を出しやすいと思います。まだ調査中です。
Zuishin

2020/02/24 23:02

全く可能に思えないので、その具体的な方法を聞いていますが、まだ調査中でそちらにもわからないということですね? では恐らくあなたが間違っている可能性が高いです。 プラグマでコーディング規約をチェックするのは不可能だと思います。
dodox86

2020/02/25 00:32

>質問者さん 何かしら新しいことをしたい、ネタを得たい意図があるのかもしれませんが、いただいた本回答の意図はそこにある訳ではないはずです。プラグマを使って(仮に)コーディング方法を強要することができたとしてもごく一部でしょう。プラグマで何ができるかを把握することは一定の利益があるとは思いますが、それを定義する者と使う者の技術レベルを問うこと無しに本目的を達せられるかは大いに疑問です。コーディング規約とはNimでどうこうと言うことではなく、設計や製造の指針のお話です。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問