スレ立てるまでもない質問はここで 149匹目
■ このスレッドは過去ログ倉庫に格納されています
質問する前にGoogleで検索しましょう。 http://www.google.com/
プログラム・ソフトの使い方は PC 初心者板やソフトウェア板へ。
ウイルス、ハッキング・クラッキングを求めるような発言は禁止です。
Javascript は Web 制作板、CGI は Web プログラミング板へ。
業界談義、愚痴はプログラマ板へどうぞ。
ゲーム関係の話題はゲーム製作板へどうぞ。
ネタ、板とは関係の無い話題はご遠慮ください。
前スレ
スレ立てるまでもない質問はここで 148匹目
https://mevius.5ch.net/test/read.cgi/tech/1495618637/
注意「〜と〜はどっちの方が○いですか?」みたいなのは
このスレの粘着荒らしですので無視してください
VIPQ2_EXTDAT: checked:vvvvvv:1000:512:----: EXT was configured >>746
お前はサービス作ったことないから知らんだろうが、サービスというのは保守作業も含まれる。
その勉強に使えということだ。
それから改良して最リリースもしてみるといい。そこまでやれれば大したものだ。
お前みたいなのはどうせ何だかんだ理由をつけて最後までサービスを作らない。
だから金の力を使って体を動かせということだ。
どうだわかったかこのボケチンが。 ひえ!IPもワッチョイも見えとるやんけ!
こりゃかなわんわ!さいなら! 初歩的な設計に関する質問なのですが
class A{
private final string hoge;
public A(hoge){
this.hoge = hoge;
}
public int piyo(){
hogeを使った何らかの操作
}
}
というのと
class A{
public int piyo(hoge){
hogeを使った何らかの操作
}
}
処理のインプットがコンストラクタ(メンバ変数)かメソッドの引数かの違いだけでやれることは同じだと思うのですが、
クラスがデータ構造を表すものだとすると前者の方が正しいような気がするのですが(後者は処理をクラスに書いただけなので良くない?)、
hogeを保持しておく意味もあまり無いかなという気もして、オブジェクト指向というものがよくわからなくなってしまいます。
書籍の紹介などでもいいので
何か指針のようなものを教えていただきたいです。 hogeがAの身体の一部なのか外来種なのかによるのでは ユーティリティクラスの是非とかそういう話よな
純粋なオブジェクト指向からは外れちゃうんだろうし
設計によって減らすことはできるけど
どこまでこだわるかは規約や嗜好次第じゃないかなあ
極論するとNum1+Num2 みたいな式もダメってことになりかねないし 新しい通信技術を開発して、大儲けしたい。
どんな知識が必要ですか? 英語(英語コミュニケーションI、II、III、論理・表現I、II、III) >>751
確かに
演算子もオブジェクト指向的にはメンバにしないとだめなのか >>752
5chにくだらない書き込みを繰り返す度に、お前さんのもともと価値のない時間がさらに無価値になり、残り時間もほんのわずかになりつつあるという、誰でも知っているがお前さんだけが気づいていない知識。 やっぱり大学というのは、現役か1浪で入れないなら入学を諦めるべきなのでしょうか?
自分は東京大学理学部数学科に入りたいのですが、もう現役はとっくに終わっています。
諦めた方が良いのでしょうか?
日本という国は、年齢区別の激しい国なので、歳をとってから大学に入るべきではないですか?
やっぱり年齢相応の事をするべきなのでしょうか? >>763
現役でもなく一浪でもなくても合格した人はたくさんいる。
だが、お前さんは合格できない。
年齢のせいでも、才能のせいでも、他の誰かのせいでもなく、
お前さんが自分で選択してた時間の使い方の積み重ねの結果、今のこの現状があり、たぶんこの先もずっと変わらない同じ日々が続くはず。 >>749
Vue.js で言えば、
上はオブジェクト指向。
状態(state)を持っているインスタンス
下は関数型。状態を持たない。
算出プロパティ(computed) > hogeを保持しておく意味もあまり無いかなという気もして、
答えでてんじゃん >>764
いや、合格できるかを聞いているのではなくて、
やっぱり、この日本という年齢区別の激しい国に生まれたからには、
年齢相応のことをやるべきなのかということを聞いているのです。 >>768
大学に入ることがお前さんにとって意味のあることなら(入ることに自体が目的なのか、大学で学んだ先に何か目的があるのか)、年齢に関係なく入ればいいんじゃね?
年齢のせいにして入るべきじゃないという「入れないことに対する言い訳」を自分で用意してそれにすがり付いているのだとしたら、それ自体が年齢に相応しくない幼稚な言動だと思う。 >>769
でもやっぱり、歳をとってから大学に入ると相当浮きますか? >>750
>>766
>>751
ありがとう
体の一部と言えるかわからないのだけど
例えばクラスAをKeyMakerとして、hogeをキーワード(string型)として、そこから長さ8の鍵(byte配列)を作って返す機能が欲しいとするとどう考えるべきでしょうか
そもそもなんとかmakerのようなクラスがダメでしょうか(動詞er)
ダメだとしたらどういうクラスにこの機能を持たせるべきでしょうか
質問ばかりで申し訳ないです
独学なため、具体的に何か作ろうとしたときどうしていいかわからなく混乱して手が止まってしまう >>749
クラスが本当にデータを持つのが正しいなら前者。
そのクラス自体が要らないなら後者。
>>773
の例なら「keyを持つ文字列」としてクラス作る(Javaやら)なり、文字列クラスを拡張(c#やらなんやら)するなりして
「keyを持つ文字列」や「keyを返す拡張メソッド」の責任としてkeyを返すメソッドなりプロパティを作るほうが、規模が大きくなっても責任が他のクラスに波及しない。
makerクラスとかUtilクラス作ってると破綻するよ。誰かに壊されたり、似たようなメソッドがごった煮になったり、すごく肥大したり。 C++みたいにクラスと関数が共存できる場合、
ユーティリティクラスを作るなら別に名前空間でもよくね?ってなるよね
ならない? あたりまえやろ
むしろ機能不全な不自由な言語がユーティリティクラスなどという不細工な代物を生みだしてしまったんや クラスしかモジュール分けの機能がない言語であってもユーティリティクラスなんて作るべきじゃない
1クラスに1メソッド状態になってもいいからちゃんと用途別に分割しろよ 東大を目指すか迷う。
今が7歳とかだったら絶対に目指しているのにな・・・・。 老人になっても学問を志していいんやで
細かい話がしたいなら大学受験板や大学生活板へどうぞ >>773
class MyClass {
myProp // 属性
myFunc // メソッド
}
元のstring を保存するなら、適当な属性(インスタンス変数)に保存する。
属性には、1つのstringだけを保存する方法と、
複数のstring(stringの配列)を保存する方法の、2つが考えられる
メソッドでは、stringをbyteに変換すればよい
説明する際に、各言語で用語が違うから、各言語のスレに質問した方がよい。
それと質問を続けるときは、名前欄に最初の質問番号を書いて 状態を持つならオブジェクト(+メソッド)、持たないなら純粋関数。簡単なことだろ? プログラム技術が極限まで発達するとどうなるのでしょうか? ウイルスセキュリティソフトは個人で開発することは可能ですか? 一生全く頭を使わないで生きていたらどうなるのでしょうか?
脳が萎縮するのでしょうか? プログラムからプログラムを起動するときに起動引数を渡そうと思うんですが、
悪意あるプログラムが同じコンピューター上で動作していた場合、
起動引数を盗み見る事はどの程度困難ですか?
もしカーネルをハックするような動作が必要なら、恐らくアンチウイルスに引っかかると思うのですが。 設計的なことって独学じゃなかったらどこで教わるんだ? >>774
本当にありがとうございます。
keyMaker{
private string password;
private encoding enc;
public createkey(){
passwordをバイト配列にencで変換
し、
長さ8の配列にxorしながら入れて鍵に
して返す
}
}
という感じだったのですが
password{
private string value;
tokey(encoding enc){
encでvalueをバイト配列に変換
し、長さ8の配列にxorしながら入れて
返す
}
}
という風に変えようと考えたのですが
どうでしょうか。少しはマシになっているのでしょうか。(encodingはpasswordクラスの属性でもいいかなというもしますが)
オブジェクト指向において名前の付け方がかなり重要(というか本質?)というような印象を受けますがこの認識はおかしいでしょうか。 各言語の入門書の次に読む本は「Effective 何々」
デザインパターン・設計の仕方なども、書いてある
これを読んでいないと、プロとは呼べない
上司に多いけど、たいてい、おかしな事を言ってる奴は読んでない >>789
言語は何?そうするともう少し絞って話せるんだけど。。
名前付けは大切。
パスワード以外の用途には絶対に使わないか?とか。
encodingが文字列のエンコーディングだとすれば、それは引数に渡すべきじゃない。
コンストラクタで、中身とエンコーディングを渡すべき。
そもそもそれ、tokeyを呼ぶときに決定するものではないでしょ?
tokeyはホントに言語によってなんて言う言葉が適切かはわからないけど、JavaならgetKeyで、プロパティのある言語なら単にKeyでは?
あと、個人的にはToXXXは意味が広すぎると思う。AsKey()とかかなぁ。 encoding を、password インスタンス毎に変えて保存するなら、インスタンス変数にすべき
常に同じ、encoding を使うのなら、encoding 情報はいらない。
コメントに書くとか、クラス変数に保存しておく
このスレよりも、各言語のスレに書き込んだ方がよい >>789
そりゃ重要なのは間違いないが
オブジェクト指向だから特に大切である、ということはないと思う
まあ、オブジェクト指向の中で比較的よく使われる設計(デザパタ)の中には
中身ほぼ同じでも名前で大きく運用が異なっちゃうような例外もあるにはあるが >>791
ありがとうございます。実のところ、言語はvb.netを使っています
オブジェクト指向をサポートする言語でのクラスの基本的な設計が知りたかったため言語を記載しておりませんでした。
後だしで恐縮ですがもう少し具体的な話をすると、この鍵というのはDESを復号するためのものです
(セキュリティ上すでにDESが非推奨なのようですが、とりあえず練習ということで気にしないでください) >>794
じゃあ拡張メソッドが使えるのか。
ならAsKeyを文字列の拡張メソッドにするか、文字列で作るパスワードクラスにして、元の文字列捨てちゃうかな。
しかしDESの鍵なら、ちょっきり128ビットなりにならないと駄目で、受け付ける文字列からそれをxorで作ってるなら、
せめてMD5とかSHAとかでhash取って使ったほうがいいんでないの?
xxxx....yyyy....と、yyyy....xxxx....がどちらも有効なパスワードになるんでは? >>773
キーワードを与えて鍵を返すだけなら
クラスにすべきではないというのが私の考え
C言語なら関数にすればいい
キーワードを与えて鍵を得た後、
そのオブジェクトのデータを何かの形で継続利用するなら
(例:作成した鍵をバイト列とは異なる表現で得る)
オブジェクトのメンバー変数として保持しておくべき
ただコード全体をオブジェクト指向で統一しろと
言われうることも多いね DESを復号化するための鍵?
意味が分からん。。。
そもそもDESは対称鍵暗号
暗号化も復号化も同じ鍵使う 無になってもう二度と有になりたくない。
自殺をしたら無になってもう二度と有にならなくなるのだろうか?
それとも、自殺をしたら地獄に落ちたり更に悲惨な状態でまた生まれてきたりするのだろうか?
どうなんだろう? >>797
失礼しました
暗号化/復号に使う鍵の間違いです >>796
ありがとうございます。
javaやvb.netの場合その関数はどこに作るのがよいでしょうか
>>795
ありがとうございます。拡張メソッドの使い方を勉強してみます
また、セキュリティに関するアドバイスも大変勉強になります。主旨とずれるのでここでこれ以上の質問は避けますが、もう一度考え直すことにします 値保有する必要が無いなら単にstatic関数作って引数もらえばいいんじゃないの それを誰が持つかが問題なのでは。
拡張メソッドも実のところ単なる静的関数だけど、usingしたソース(使いたいシーン)だけで出てくるメンバ関数に見える存在なので、
単にUtil.KeyUtil.ComputeKeyみたいな深いUtilクラス作るより収拾がつきやすいとか、
宣言無しでは使えないので依存関係が頭のusing(VBで何だったか忘れた)見るだけでわかりやすいとか、
それぐらいのメリットでしか無いし。 >>801
desクラスでも作ってそこにメソッド置けば? class des {
public:
static encript(char const* encrypt_key, char const* plain_text, char* encript_text);
static decript(char const* decrypt_key, char const* encript_text, char* plain_text);
}
デデーン class des {
public:
static int encrypt(char *encoded, const char *key, const char *raw);
static int decrypt(char *decoded, const char *key, const char *encoded);
}; YouTubeを作った人は天才なのでしょうか?
自分も、YouTubeみたいな世界的な超有名サイトを作って、大金持ちになりたいです。
具体的にどうすれば良いですか? リーマン予想とかP≠NP予想とかを自分一人の力だけで証明したい。絶対に実現してやるからな。 C++でゲーム作りたいんだけどどうやるんですか?
DXナントカ使うしかないんですか? 最近気づいたんですが
プログラムを書こうとしても入門書で習ったコードとほぼほぼ同じようなものしか書けません…
この板でお勧めされてる入門書2冊を読み切ったのにです
もしかしたら、ただコードを暗記してるだけで本当は本の内容理解出来てないんじゃないか?とか色んな不安を感じてきてます
2冊も読んだら応用的なコードもそれなりに書けるとイメージしてたんですが・・
向いてないと言われればそれまでなんでしょうが……
色んなパターンのコードが書けるようになりたいです。何かアドバイス下さい
もうプログラミングを始めて1ヶ月経ちました 次の勉強はアルゴリズムかデザインパターンかってところじゃね 何か作りたいものはないのかな?
それを作るためには、あなたの知ってるパターンをどう使うのが適切か?
を自分で考える。 英語とかと似てる
本読むだけじゃ身につかない
コードをいっぱい書くしかない
やってる密度にもよるけど、始めて1ヶ月じゃそんなもんでしょ >>812
プログラムは入力を受け取ってそれを表示するだけ
画像だろうが文字だろうが同じ
アドバイスなぞない >>812
本を読んで教えてくれることをただ受けとるだけでは上手くなることはないだろう。
本を読んで、その中で疑問に思ったり、こんなことはでないのかなと思ったことはない?あるなら、実際にコードを書いてあれこれ試してみれば、自然と上達するはず。
そういうことが特に何もなくて自発的に書こうとすることがないなら、この先も厳しいと思う。 なるほど。実際に書く書かないで理解の差が出てしまっているんですね・・・
一応VisualStudioインストールして載ってるコードをそのまま写して実行とかはやってたんですけど
受け取ったアドバイスを見るにただ本のサンプルを写して終わりってのがあまり良くないんですね…
そこから何か自分で考えて色々書き換えて試すのが重要なんですね
作りたいものは綺麗なGUIアプリと漠然と決まってますが今まで読んだ入門本の知識を総動員しても
無理なのであまりイメージが沸かないですね…
とりあえず自分でコードを考えて書くのを意識しながら今読んでる入門書を読破してみたいと思います
アドバイス大変ありがとうございます recaptchaみたいに、特定の画像をマス目に分けて、リンゴっぽく見えるものは?という質問をして
それのデータを蓄積するということをしたいのですが右も左も分かりません
Pythonの本とディープラーニングの本から始めればいいのでしょうか?
人間が画像を解析して、その結果をコンピュータに学習させ、人間には見えず、コンピュータには見えるものを浮かび上がらせる
ということがしたいです
たとえば人間は先入観のせいで、人間の尻を尻として理解しますが、コンピュータは人間の尻をリンゴそっくりだと判定するかもしれません 人間はおっぱいをお尻と理解するから
ちんちんが勃つ その無理なのでってのがまず何ができないかっていう具体的な質問に変わるだろ? たとえばなアプリに
エロ画像ファイルを入力する
機械学習使ってエロ画像判定を行う
それがエロ画像なら勃起アイコン
それがエロ画像でないなら勃起してないアイコン
を表示する
まずそういうのから始めたほうがいい
コレができたら自動エロ画像収集クローラーに応用できる >>822
今まで読んだ本がプログラミングの基礎の基礎的な構文、仕様を説明してる本で
アプリに繋がるような事が書いてる本ではなくて
GUIとかはまた別の構文とか習わなきゃ書けないと思うのでそれを意識してコードを書くのは
今の段階では無理という意味でいいました。まだ習ってないので飛躍してるかなっと思って
言葉足らずですいません 別の構文なんか不要
文法覚えたらあとは文法どおり関数を呼び出すだけだ
心配することはない サルにでもできる
この板にいるサル程度の知能のヤツラでもできる程度のことだからな >>823
回答ありがとうございます
それでは機械学習の入門書から当たってみます
いくつかライブラリのほうを検索してみましたが言語はやはりPython率高いですね
ユーザーからも画像データを投稿して貰いたいので、最終的にはAWSなどを借りることになると思います エロ動画を管理するGUIプログラムを作りたいです
主な機能は
・動画タイトルを参考にしてdmmからサムネイルを取得する
・ニコニコ動画のようにタグ付けを行い検索しやすくする
わからないことは
・どのようなプログラミング言語、GUIライブラリで可能なのか
ということです
最適ではないにしても可能であれば、PythonとTkInterを使おうと考えています
Pythonであれば他にも面白そうなことができると思うからです
以上よろしくお願いいたします 自分も似たような事悩んでた頃あったよ
本読んで勉強してとりあえずやりたい事(仕事)では最低限のものが書けるようになった
その都度調べてこっちのが綺麗にかけるとかパフォーマンス良いとか少し気を使ったモノが掛けるようになった
でも職場では周りに技術者て言える人はないしレビューみたいなシステムもない零細だからスキルが上がってるかは不安がある
結局なんで不安かって言ったら自分が趣味で作りたいと思えるものに結びつかなくて出来ることが仕事周りの極一部で止まってるから
何でも良いから色々と手を出して手を動かして作るのが大切と気づいた スクレイピングなら、Ruby で、Selenium WebDriver で、ブラウザを操作する。
JavaScript のElectron とか
どちらにせよ画面は、HTML まずは東大に入り、そこを断然トップの成績で卒業し、
院はハーバードかオックスフォードかケンブリッジあたりに入りたい。
教授に推薦してもらえるように頑張りたい。 他所で無視されたからここで聞くがスーファミのマリカーの3D表現の仕組みが分からん。
コース全体の地面の画像があってそれから切り出して遠近法ぽく表示してるの? 実際のマリオカートがどうやってるかは知らないが
画像の回転・拡縮、あとは台形のような変形ができれば可能っぽいな
レトロゲーム板あたりの人のほうがSFCの技術仕様には詳しそうではあるが Ruby始めたんですが、ATOMとVS code、どちらを使えばいいのかわかりません……
ATOMと方がテーマが沢山あって、MOMOKAI NEOとかめちゃくちゃ見やすいです。でも重いし、あんまり使ってる人がいない印象です。
VS code ATOMより軽いですが、テーマに魅力がなく、機能的に ATOMよりどこが優れているのか分かりません。でも多くの人がVS codeを勧めているので、 ATOMよりそっちの方がいいのかな……というきもします。
好きな方を使えという話だとは思いますが、ご意見をください。 >>834
そりゃVS Codeは
ATOMとかそのへんを参考の1つとして作られたものって言われてるしな
同じようなものになるのは当然
ただ腐ってもVS、IDEのデファクトスタンダードの名前を冠しているだけあって
最初からコーディングを前提に設計されているエディタだし
当然そういったコミュニティ(サポートや拡張機能)にも強い
最近はMSのOSS界隈への信頼もそれなりに高いしな
まあちょっと触ってみてATOMのほうが魅力的だと思うなら
素直にその魅力的な方を使うべきだろうな オブジェクト指向のプログラミングはなぜメイン関数でインスタンスを作ってrunメソッドを呼ぶだけで動くのですか?
runがメイン関数ということですか? >>837
非オブジェクト指向の関数で、main関数の中でとある関数を呼んだらソレだけで動きました
何故ですか
これに答えれるなら、それがそのまんま答えだ そりゃ、Atom よりも、VSCode だろ。
使っている人数が多いから、拡張機能が充実してる
Ruby, JavaScript, HTML, CSS, DB, webサーバー、テストツールなど 定期運送用操縦士と電験一種はどっちの方が凄いですか? 今、思索をしていて哲学上の壁にぶつかってしまっている状態。
どうすればここを突破できるのだろうか・・・・・・・・・・?
こういう時、どうすれば良いのだろうか・・・・・・・・・・・・?
ただひたすら思索を続けるしか方法は無いのだろうか・・・・・・・・? ■ このスレッドは過去ログ倉庫に格納されています