探検
設計思想/ソフトウェア工学(UML, デザパタetc) [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2017/09/29(金) 01:10:55.23ID:NSGi97+G ・要求設計、概念設計、論理設計、物理設計までを扱う範囲とします。
2デフォルトの名無しさん
2017/09/29(金) 01:29:23.55ID:ppl3WHHK %%%3%%%
000-DOK<NAZE-0.8112162>
001-3800%\73NMB/1,81,2,NB"IKKI"%
002-91.81%ML7"8.122231746668193,43@ML.4@"%^23.1444
003-1.33321444718%"YLD""SO"%{71.%{62.1339816{331.422231765%<<<NL6
004-LOOP%Go To"000"%
VCL
000-DOK<NAZE-0.8112162>
001-3800%\73NMB/1,81,2,NB"IKKI"%
002-91.81%ML7"8.122231746668193,43@ML.4@"%^23.1444
003-1.33321444718%"YLD""SO"%{71.%{62.1339816{331.422231765%<<<NL6
004-LOOP%Go To"000"%
VCL
3デフォルトの名無しさん
2017/09/29(金) 03:11:51.92ID:UluMyDjB テーマが漠然としてる
良い設計はどういう設計かとか
なんか問題意識が欲しい
あと具体的な題材も欲しい
図書館やレンタルビデオの
貸出管理をどう設計するかとか
良い設計はどういう設計かとか
なんか問題意識が欲しい
あと具体的な題材も欲しい
図書館やレンタルビデオの
貸出管理をどう設計するかとか
4【お題】
2017/09/29(金) 03:55:44.00ID:NSGi97+G ・じゃあお題を建てよう。
・みんな>>3 を基準にして色々と考えてくれ。
・このお題が気に入らない場合棄却してくれても構わないが、
その場合代わりのお題はつくってくれよな。
・「Excelに記録されているデータを読み込んで特徴を分析し、
それを洗練して互換的に格納するDBを作成るSQL案を自動生成する。
このシステムはデータをもとに推測を行って、テーブル作成から
データ流し込みまでの全てのSQL案を生成してくれる。
DB名, テーブル名, カラム名, データ型, 各種制約も出来る限り
頑張って設定してくれる。(わからない場合デフォルトの名前とか
が入るようになる。)
推測のしかたについて、オプション指定機能が搭載されていて、
オプション次第で様々なDB格納法が自動生成できる。
制約については何故その制約が必要と判断したのかの理由を
レポートしてくれる。」
・みんな>>3 を基準にして色々と考えてくれ。
・このお題が気に入らない場合棄却してくれても構わないが、
その場合代わりのお題はつくってくれよな。
・「Excelに記録されているデータを読み込んで特徴を分析し、
それを洗練して互換的に格納するDBを作成るSQL案を自動生成する。
このシステムはデータをもとに推測を行って、テーブル作成から
データ流し込みまでの全てのSQL案を生成してくれる。
DB名, テーブル名, カラム名, データ型, 各種制約も出来る限り
頑張って設定してくれる。(わからない場合デフォルトの名前とか
が入るようになる。)
推測のしかたについて、オプション指定機能が搭載されていて、
オプション次第で様々なDB格納法が自動生成できる。
制約については何故その制約が必要と判断したのかの理由を
レポートしてくれる。」
5デフォルトの名無しさん
2017/09/29(金) 08:11:49.51ID:f9wlNvC66デフォルトの名無しさん
2017/09/29(金) 22:32:09.38ID:NSGi97+G >>5
そうだよ、アナリシスパターンでもいいよ
そうだよ、アナリシスパターンでもいいよ
2017/09/29(金) 23:06:17.17ID:RLeXl8wr
>>4
設計思想について話したかったんじゃないの?
設計思想について話したかったんじゃないの?
2017/09/29(金) 23:10:07.53ID:QnX5sSrT
設計なんで実装の話は原則禁止
どの言語でも通用する話をするべき
どの言語でも通用する話をするべき
2017/09/29(金) 23:10:37.66ID:QnX5sSrT
2017/09/29(金) 23:18:03.15ID:QnX5sSrT
いや俺が書いてあげよう。ExcelやSQLという言葉を消すだけだが
・「マイグレーションファイルに記述した定義から
いろんなデータベースにスキーマと初期データを自動生成する。
このフレームワークは初期データファイルから
データの流し込みを行ってくれる
スキーマや制約も出来る限り
頑張って設定してくれる。(わからない場合デフォルトの名前とか
が入るようになる。)
オプション指定機能が搭載されていて、
オプション次第で多くのDBMSに対応できる。
ER図とかの自動生成機能も存在する」
つまりRailsのようなものだ。
Railsを設計してくれという話だ。
・「マイグレーションファイルに記述した定義から
いろんなデータベースにスキーマと初期データを自動生成する。
このフレームワークは初期データファイルから
データの流し込みを行ってくれる
スキーマや制約も出来る限り
頑張って設定してくれる。(わからない場合デフォルトの名前とか
が入るようになる。)
オプション指定機能が搭載されていて、
オプション次第で多くのDBMSに対応できる。
ER図とかの自動生成機能も存在する」
つまりRailsのようなものだ。
Railsを設計してくれという話だ。
2017/09/29(金) 23:23:08.13ID:RLeXl8wr
2017/09/29(金) 23:24:44.32ID:QnX5sSrT
つまりは>>4はActiveRecordの設計がどうなっているか?
ORMとはどのような設計になっているかという話がしたいということだろう。
ORMとはデータベースをオブジェクトにマッピングしてくれるものだ。
というのはよく言われる簡単な説明の一つだな。
まず二次元のデータベースっていうのは慣れると単純なので
ある意味楽ではあるが、現実世界は二次元のデータには収まらない
初心者が勘違いしてしまうのはORMは単なるSQL生成ツールだと
思ってしまうこと。まあそれは本当の初心者だろうが、
ORMは複数のテーブルがあってそれぞれがつながってる
データベース全体をオブジェクトの形で表現するもの。
テーブル=モデルと考えてしまうと、ある地点で行き詰まってしまう。
データベース=モデル群と考えるのが正解。
データベースに入っているデータをいろんな視点(=モデル)から
見ることができるようにするのがORM
だからORMを使う時にモデルとモデルのつながりの定義を書くのは必須なのである
(もちろんログや設定のようなつながりを持たないモデルもあるにはあるが)
ORMとはどのような設計になっているかという話がしたいということだろう。
ORMとはデータベースをオブジェクトにマッピングしてくれるものだ。
というのはよく言われる簡単な説明の一つだな。
まず二次元のデータベースっていうのは慣れると単純なので
ある意味楽ではあるが、現実世界は二次元のデータには収まらない
初心者が勘違いしてしまうのはORMは単なるSQL生成ツールだと
思ってしまうこと。まあそれは本当の初心者だろうが、
ORMは複数のテーブルがあってそれぞれがつながってる
データベース全体をオブジェクトの形で表現するもの。
テーブル=モデルと考えてしまうと、ある地点で行き詰まってしまう。
データベース=モデル群と考えるのが正解。
データベースに入っているデータをいろんな視点(=モデル)から
見ることができるようにするのがORM
だからORMを使う時にモデルとモデルのつながりの定義を書くのは必須なのである
(もちろんログや設定のようなつながりを持たないモデルもあるにはあるが)
2017/09/29(金) 23:25:13.78ID:QnX5sSrT
2017/09/29(金) 23:29:12.39ID:QnX5sSrT
ActiveRecordはRailsが有名になったせいで
Rails特有のライブラリや概念だと勘違いしている人も
いるかもしれないがそれは違う。
ぐぐればすぐに分かることだが
http://www.techscore.com/tech/Ruby/Rails/other/designpattern/1/
> 1. Active Recordパターンとは?
>
> Martin Fowler氏の Patterns of Enterprise Application Architecture (邦訳)で
> 解説されているデザインパターンのひとつで、以下のように解説されています。
>
> データベーステーブルまたはビューの行をラップし、データベースアクセスを
> カプセル化してデータにドメインロジックを追加するオブジェクト
日本語訳は残念との噂が高いが、この本のこと
エンタープライズアプリケーションアーキテクチャパターン
https://www.amazon.co.jp/dp/B01B5MX2O2
なのでActiveRecordパターンの話は
あきらかに設計思想の話であると明確にしておこう
Rails特有のライブラリや概念だと勘違いしている人も
いるかもしれないがそれは違う。
ぐぐればすぐに分かることだが
http://www.techscore.com/tech/Ruby/Rails/other/designpattern/1/
> 1. Active Recordパターンとは?
>
> Martin Fowler氏の Patterns of Enterprise Application Architecture (邦訳)で
> 解説されているデザインパターンのひとつで、以下のように解説されています。
>
> データベーステーブルまたはビューの行をラップし、データベースアクセスを
> カプセル化してデータにドメインロジックを追加するオブジェクト
日本語訳は残念との噂が高いが、この本のこと
エンタープライズアプリケーションアーキテクチャパターン
https://www.amazon.co.jp/dp/B01B5MX2O2
なのでActiveRecordパターンの話は
あきらかに設計思想の話であると明確にしておこう
15【お題】
2017/09/29(金) 23:30:29.00ID:NSGi97+G >>10
いいやそれは違う。
マイグレーションファイル書かないとだめじゃん。
SQLという文言は排除してもいいがExcelは排除したくない。
「IT全然知らない人がつくった.xlsxファイルを、データベースに入れたい」
「それと同時にデータベースをつくってくれる呪文」も手に入れたい。
RailsとかORMとか ActiveRecordとかもっと詳細化された概念じゃん。
いいやそれは違う。
マイグレーションファイル書かないとだめじゃん。
SQLという文言は排除してもいいがExcelは排除したくない。
「IT全然知らない人がつくった.xlsxファイルを、データベースに入れたい」
「それと同時にデータベースをつくってくれる呪文」も手に入れたい。
RailsとかORMとか ActiveRecordとかもっと詳細化された概念じゃん。
2017/09/29(金) 23:33:41.73ID:QnX5sSrT
ActiveRecordパターン等のパーシステンス層アーキテクチャパターン
には次のようなものが有る
http://otndnld.oracle.co.jp/columns/arai-semi/data_access/2/
> Table Data Gateway
> Row Data Gateway
> Active Record
> Data Mapper
には次のようなものが有る
http://otndnld.oracle.co.jp/columns/arai-semi/data_access/2/
> Table Data Gateway
> Row Data Gateway
> Active Record
> Data Mapper
2017/09/29(金) 23:35:53.60ID:QnX5sSrT
>>15
> Excelは排除したくない。
お前の都合は知らん。
一番シンプルでわかりやすく強力な手段を選ぶべき
例えば、booleanと書けばいいのに真偽値と日本語で書くようなもの。
not null と書けばいいのに必須と日本語で書くようなことに意味はない
その考えで行くとExcelは排除すべきという結論になる
そのことを説明してもいいが、そもそも設計の話とは無関係なので
Excelの話はここでもう終わり
お前風言うのであれば
「Excelは排除したい」だ。このスレから
> Excelは排除したくない。
お前の都合は知らん。
一番シンプルでわかりやすく強力な手段を選ぶべき
例えば、booleanと書けばいいのに真偽値と日本語で書くようなもの。
not null と書けばいいのに必須と日本語で書くようなことに意味はない
その考えで行くとExcelは排除すべきという結論になる
そのことを説明してもいいが、そもそも設計の話とは無関係なので
Excelの話はここでもう終わり
お前風言うのであれば
「Excelは排除したい」だ。このスレから
2017/09/29(金) 23:36:19.09ID:f2TxCfjK
仕様が確定してれば設計なんて猿でもできる
仕様が不確定な問題を設計までもってくる馬鹿がいるとその開発は失敗と思っていい
仕様が不確定な問題を設計までもってくる馬鹿がいるとその開発は失敗と思っていい
2017/09/29(金) 23:37:47.81ID:QnX5sSrT
一人で設計とは関係ないエクセルがーって
話をしたいならどうぞご勝手にとしか言うつもりはない。
ただ設計思想とは全く関係ないということだ。
だから設計思想の話をしたいと思ってる人は
俺を始め、エクセルの話は誰もしないということは受け入れろ。
話をしたいならどうぞご勝手にとしか言うつもりはない。
ただ設計思想とは全く関係ないということだ。
だから設計思想の話をしたいと思ってる人は
俺を始め、エクセルの話は誰もしないということは受け入れろ。
2017/09/29(金) 23:38:23.39ID:QnX5sSrT
2017/09/29(金) 23:40:19.76ID:QnX5sSrT
設計思想の話に戻ろう
といっても俺が何やら言うよりもまずはコピペでいいあろう。
設計思想の話について、何か意見があればどうぞということだ。
Active Record
3つ目はActive Recordです。一言で言うと「データベースのテーブル/ビューの
1つの行をラップしたオブジェクトで、データアクセスロジックやドメインロジックを
カプセル化したオブジェクトとして実装」といえるかと思います。
Active Recordは、それ自身にドメインロジックを含むという点でドメイン層の
Domain Modelパターンとデータベースのテーブルのレコードを表すという点で
パーシステンス層のRow Data Gatewayパターンに良く似ています。
まず、Domain Modelと似ているという点ですが、Active Record自体が
Domain Objectと成り得るのですが、本当?のDomain Objectと異なる点は、
Active Recordはテーブルの構造を元にして基本的にテーブルの列の表現として設計される点です。
一方、Domain Objectは、テーブルの構造に関係なく、オブジェクト指向のドメイン分析の結果抽出されます。
例えば、前編で説明したDomain Modelでは、Strategyパターンを利用しているものの、
BIDテーブルに対応したBidクラス、Itemテーブルに対応したItemクラス、
SALEテーブルに対応したSaleクラスとテーブルとクラスがほぼ一対一になっていますが、
ドメインオブジェクトの設計によっては同じテーブル構造のまま、Itemを抽象クラスとして用意して、
そのItemを継承したBookやComputerなどの具象クラスを作成する様な継承関係を実装するかもしれません。
その場合、それら継承関係をItemテーブルという1つのテーブルに格納しなければならないかも知れません。
つまり、Domain Modelが複雑になればなるほど、両者の違いは明確になってきます。
そもそもドメイン層とパーシステンス層という全く役割の異なった層のパターンですので違うのが当たり前ですが・・・
あと、Row Data Gatewayと似ているという点ですが、これは単純にActive Recordがドメインロジックを含むという点かと思われます。
Active Recordパターンのコードは、Row Data Gatewayとほぼ同じです。異なる点は、
それ自身にドメインロジックが含まれるという点ですので今回は省略します。
といっても俺が何やら言うよりもまずはコピペでいいあろう。
設計思想の話について、何か意見があればどうぞということだ。
Active Record
3つ目はActive Recordです。一言で言うと「データベースのテーブル/ビューの
1つの行をラップしたオブジェクトで、データアクセスロジックやドメインロジックを
カプセル化したオブジェクトとして実装」といえるかと思います。
Active Recordは、それ自身にドメインロジックを含むという点でドメイン層の
Domain Modelパターンとデータベースのテーブルのレコードを表すという点で
パーシステンス層のRow Data Gatewayパターンに良く似ています。
まず、Domain Modelと似ているという点ですが、Active Record自体が
Domain Objectと成り得るのですが、本当?のDomain Objectと異なる点は、
Active Recordはテーブルの構造を元にして基本的にテーブルの列の表現として設計される点です。
一方、Domain Objectは、テーブルの構造に関係なく、オブジェクト指向のドメイン分析の結果抽出されます。
例えば、前編で説明したDomain Modelでは、Strategyパターンを利用しているものの、
BIDテーブルに対応したBidクラス、Itemテーブルに対応したItemクラス、
SALEテーブルに対応したSaleクラスとテーブルとクラスがほぼ一対一になっていますが、
ドメインオブジェクトの設計によっては同じテーブル構造のまま、Itemを抽象クラスとして用意して、
そのItemを継承したBookやComputerなどの具象クラスを作成する様な継承関係を実装するかもしれません。
その場合、それら継承関係をItemテーブルという1つのテーブルに格納しなければならないかも知れません。
つまり、Domain Modelが複雑になればなるほど、両者の違いは明確になってきます。
そもそもドメイン層とパーシステンス層という全く役割の異なった層のパターンですので違うのが当たり前ですが・・・
あと、Row Data Gatewayと似ているという点ですが、これは単純にActive Recordがドメインロジックを含むという点かと思われます。
Active Recordパターンのコードは、Row Data Gatewayとほぼ同じです。異なる点は、
それ自身にドメインロジックが含まれるという点ですので今回は省略します。
2017/09/29(金) 23:44:51.15ID:QnX5sSrT
パーシステンス層アーキテクチャパターンの選択
それでは、どのパーシステンス層のアーキテクチャパターンを選択すべきでしょうか?
これは、ドメイン層のアーキテクチャパターンの選択に大きく依存します。PoEAAでは、以下の様な組み合が考えられるとしています。
ドメイン層アーキテクチャパターン パーシステンス層アーキテクチャパターン
Transaction Scriptパターン Row Data Gatewayパターン
Table Data Gatewayパターン
Domain Modelパターン Active Recordパターン
Data Mapperパターン
Table Moduleパターン Table Data Gatewayパターン
ドメイン層とパーシステンス層はどの様な組み合わせでもかまいませんが、
より合わせやすいパターンは上記の様な組み合わせといっています。
また、少し視点を変えて各アーキテクチャパターンとシステムの論理的な階層の依存関係を表すと以下のように成るかと思われます。
【図】パーシステンス層/ドメイン層アーキテクチャパターンの依存関係
かなり抽象的かつ感覚的な図ですので、大体の感触をつかんでいただければ良いのですが、
1つ言えることは、システムの論理的な階層である、ドメイン層とパーシステンス層は、
其々異なる役割を持った層ですので、お互いに依存が少ないほうが好ましいと思われます。
その点で言うとDomain ModelとData Mapperがお互いの層で依存関係が少なく済みます。
それでは、どのパーシステンス層のアーキテクチャパターンを選択すべきでしょうか?
これは、ドメイン層のアーキテクチャパターンの選択に大きく依存します。PoEAAでは、以下の様な組み合が考えられるとしています。
ドメイン層アーキテクチャパターン パーシステンス層アーキテクチャパターン
Transaction Scriptパターン Row Data Gatewayパターン
Table Data Gatewayパターン
Domain Modelパターン Active Recordパターン
Data Mapperパターン
Table Moduleパターン Table Data Gatewayパターン
ドメイン層とパーシステンス層はどの様な組み合わせでもかまいませんが、
より合わせやすいパターンは上記の様な組み合わせといっています。
また、少し視点を変えて各アーキテクチャパターンとシステムの論理的な階層の依存関係を表すと以下のように成るかと思われます。
【図】パーシステンス層/ドメイン層アーキテクチャパターンの依存関係
かなり抽象的かつ感覚的な図ですので、大体の感触をつかんでいただければ良いのですが、
1つ言えることは、システムの論理的な階層である、ドメイン層とパーシステンス層は、
其々異なる役割を持った層ですので、お互いに依存が少ないほうが好ましいと思われます。
その点で言うとDomain ModelとData Mapperがお互いの層で依存関係が少なく済みます。
2017/09/29(金) 23:49:06.93ID:QnX5sSrT
>>22に自己レス
パターンはぶっちゃけどれもまともに使っていれば悪くないんだろうけど
結局は使うフレームワークによるよな。
ウェブのシステムは単純なのが多いから
トランザクションスクリプトパターン使って
テーブルデータゲートウェイかな?
SQLを生成してくれるライブラリで十分だと思っているけど、
Rails使ってみるとアクティブレコードパターンよく出来てるんだよな。
これぐらい作り込まれていれば、ドメインモデルパターンもやる気になる
(流石に貧弱なフレームワークでドメインモデルは大変すぎた)
パターンはぶっちゃけどれもまともに使っていれば悪くないんだろうけど
結局は使うフレームワークによるよな。
ウェブのシステムは単純なのが多いから
トランザクションスクリプトパターン使って
テーブルデータゲートウェイかな?
SQLを生成してくれるライブラリで十分だと思っているけど、
Rails使ってみるとアクティブレコードパターンよく出来てるんだよな。
これぐらい作り込まれていれば、ドメインモデルパターンもやる気になる
(流石に貧弱なフレームワークでドメインモデルは大変すぎた)
24【お題】
2017/09/29(金) 23:53:33.73ID:NSGi97+G わかった、Excelはゴリ押しするのはやめよう。
ただ、なんでExcelがいいかっていうと、
既存でExcelで格納されたデータってたくさんあるだろ、
この「既存の表を情報処理できるように整理したい」と
いうのが目的。
スプレッドシートでざっと「DBのテーブルっぽい表」を
つくって、今回開発するシステムにその「表」を見て推測させて
それっぽい構造をつくってもらいたい。
あとはそっからSQLが分かる人なら、DBいじって手直しできればいいな~と
そういう話です。Excelも固有名詞だからゴリ押ししたのは済まなかった。
ただ、なんでExcelがいいかっていうと、
既存でExcelで格納されたデータってたくさんあるだろ、
この「既存の表を情報処理できるように整理したい」と
いうのが目的。
スプレッドシートでざっと「DBのテーブルっぽい表」を
つくって、今回開発するシステムにその「表」を見て推測させて
それっぽい構造をつくってもらいたい。
あとはそっからSQLが分かる人なら、DBいじって手直しできればいいな~と
そういう話です。Excelも固有名詞だからゴリ押ししたのは済まなかった。
25【お題】
2017/09/29(金) 23:57:46.50ID:NSGi97+G2017/09/29(金) 23:58:13.22ID:QnX5sSrT
>>24
エクセルはただファイルフォーマットにすぎない。
設計思想とは何の関係もない。
ファイルフォーマットとしてみれば
無駄に重く二次元に縛られてるから柔軟性がない。
YAML形式のほうが遥かに可読性が高くて
柔軟性が有るファイルフォーマット
ってかファイルフォーマットの話はいらない。
エクセルはただファイルフォーマットにすぎない。
設計思想とは何の関係もない。
ファイルフォーマットとしてみれば
無駄に重く二次元に縛られてるから柔軟性がない。
YAML形式のほうが遥かに可読性が高くて
柔軟性が有るファイルフォーマット
ってかファイルフォーマットの話はいらない。
2017/09/30(土) 00:00:00.15ID:YEkb06JW
>>25
Martin Fowler氏の Patterns of Enterprise Application Architecture(通称PoEAA)で
紹介されているデザインパターンの一つのアクティブレコードパターンを
実装したのがRailsのActiveRecord
時系列的に見ればパターンとして紹介された後にRailsがつくられてる
Martin Fowler氏の Patterns of Enterprise Application Architecture(通称PoEAA)で
紹介されているデザインパターンの一つのアクティブレコードパターンを
実装したのがRailsのActiveRecord
時系列的に見ればパターンとして紹介された後にRailsがつくられてる
28【お題】
2017/09/30(土) 00:04:57.56ID:aRvHHZYR2017/09/30(土) 00:20:39.20ID:saho3bNy
設計って何?
業務?
プログラム?
なんの設計を考えるの?
業務?
プログラム?
なんの設計を考えるの?
30【お題】
2017/09/30(土) 00:30:38.24ID:aRvHHZYR こまったwwwww代わりの要求を考えたが出て来ないわwww
だれか要求出せる人お題考えてくれwwwww
だれか要求出せる人お題考えてくれwwwww
2017/09/30(土) 00:37:57.90ID:YEkb06JW
>>28
> .csvに書き出せばいけるやん?
だからファイルフォーマットの話はどうでもいいの
設計とは無関係
無関係だが言っておくとYAMLの方が見やすい
CSVなんてインデントすらまともにできないだろ
階層構造のデータも作れない
> .csvに書き出せばいけるやん?
だからファイルフォーマットの話はどうでもいいの
設計とは無関係
無関係だが言っておくとYAMLの方が見やすい
CSVなんてインデントすらまともにできないだろ
階層構造のデータも作れない
2017/09/30(土) 00:38:40.58ID:YEkb06JW
33【お題】
2017/09/30(土) 00:47:40.14ID:aRvHHZYR >>31
そうだな。
それを「データから」推測して構造再構築できないかな。
たとえば、"太郎"が見つかったら -> 「漢字が使われている(Unicode)」である
->「東アジアらへんの人名っぽい」とか
(少なくととも"ASSDFEWHE"のようなランダムなトークンではなさそうとか)
-"2017/09/30"を読んだら->「日付だ」とか。
型が特定できたら、開発するシステムがある程度自分なりの考え方で
整理整頓して正規化して、再構築してくれる。
あと、重要な前提として元データの「完全再現移植」は目指さない。
っていうの後付だけどつけるわ。
そうだな。
それを「データから」推測して構造再構築できないかな。
たとえば、"太郎"が見つかったら -> 「漢字が使われている(Unicode)」である
->「東アジアらへんの人名っぽい」とか
(少なくととも"ASSDFEWHE"のようなランダムなトークンではなさそうとか)
-"2017/09/30"を読んだら->「日付だ」とか。
型が特定できたら、開発するシステムがある程度自分なりの考え方で
整理整頓して正規化して、再構築してくれる。
あと、重要な前提として元データの「完全再現移植」は目指さない。
っていうの後付だけどつけるわ。
2017/09/30(土) 00:51:16.44ID:e3HOpbVM
ずっと実装の話になってる
実装だと分かるから言いたくなる
いかに設計が難しいか分かるな
実装だと分かるから言いたくなる
いかに設計が難しいか分かるな
35【お題】
2017/09/30(土) 00:55:09.45ID:aRvHHZYR2017/09/30(土) 01:31:22.72ID:Gb2Lg2Zy
どういう方針で実装するか考えことが設計だろうに。
実装とも言語とも切り離して考えることが何の役に立つのだ。
実装とも言語とも切り離して考えることが何の役に立つのだ。
37【お題】
2017/09/30(土) 01:54:58.43ID:aRvHHZYR この状態を取りまとめてくれる
有能なプロマネ兄貴が来るのを待つしか無いな。
有能なプロマネ兄貴が来るのを待つしか無いな。
2017/09/30(土) 02:21:40.48ID:MuV6ZELy
>>4の要件そう悪くなかったのに変なのに流されるからだよ
2017/09/30(土) 08:56:47.01ID:kOdc4YYr
40お題
2017/09/30(土) 11:00:02.01ID:YEkb06JW パーシステンス層アーキテクチャパターンについて自分の考えを述べよ
パーシステンス層アーキテクチャパターンの選択
それでは、どのパーシステンス層のアーキテクチャパターンを選択すべきでしょうか?
これは、ドメイン層のアーキテクチャパターンの選択に大きく依存します。PoEAAでは、以下の様な組み合が考えられるとしています。
ドメイン層アーキテクチャパターン パーシステンス層アーキテクチャパターン
Transaction Scriptパターン Row Data Gatewayパターン
Table Data Gatewayパターン
Domain Modelパターン Active Recordパターン
Data Mapperパターン
Table Moduleパターン Table Data Gatewayパターン
ドメイン層とパーシステンス層はどの様な組み合わせでもかまいませんが、
より合わせやすいパターンは上記の様な組み合わせといっています。
また、少し視点を変えて各アーキテクチャパターンとシステムの論理的な階層の依存関係を表すと以下のように成るかと思われます。
【図】パーシステンス層/ドメイン層アーキテクチャパターンの依存関係
かなり抽象的かつ感覚的な図ですので、大体の感触をつかんでいただければ良いのですが、
1つ言えることは、システムの論理的な階層である、ドメイン層とパーシステンス層は、
其々異なる役割を持った層ですので、お互いに依存が少ないほうが好ましいと思われます。
その点で言うとDomain ModelとData Mapperがお互いの層で依存関係が少なく済みます。
パーシステンス層アーキテクチャパターンの選択
それでは、どのパーシステンス層のアーキテクチャパターンを選択すべきでしょうか?
これは、ドメイン層のアーキテクチャパターンの選択に大きく依存します。PoEAAでは、以下の様な組み合が考えられるとしています。
ドメイン層アーキテクチャパターン パーシステンス層アーキテクチャパターン
Transaction Scriptパターン Row Data Gatewayパターン
Table Data Gatewayパターン
Domain Modelパターン Active Recordパターン
Data Mapperパターン
Table Moduleパターン Table Data Gatewayパターン
ドメイン層とパーシステンス層はどの様な組み合わせでもかまいませんが、
より合わせやすいパターンは上記の様な組み合わせといっています。
また、少し視点を変えて各アーキテクチャパターンとシステムの論理的な階層の依存関係を表すと以下のように成るかと思われます。
【図】パーシステンス層/ドメイン層アーキテクチャパターンの依存関係
かなり抽象的かつ感覚的な図ですので、大体の感触をつかんでいただければ良いのですが、
1つ言えることは、システムの論理的な階層である、ドメイン層とパーシステンス層は、
其々異なる役割を持った層ですので、お互いに依存が少ないほうが好ましいと思われます。
その点で言うとDomain ModelとData Mapperがお互いの層で依存関係が少なく済みます。
41デフォルトの名無しさん
2017/09/30(土) 17:39:35.70ID:e3HOpbVM2017/09/30(土) 17:55:21.86ID:e3HOpbVM
レンタルビデオをドメインモデリングでやるとしたら
ドメイン層にはまず
会員クラスがあってビデオクラスがある
貸出管理クラスで両者の情報を参照して貸出処理する
そのほか料金クラスや期日クラスも要るだろう
ここら辺はそんなに極端な差は出ないと思う
ドメイン層にはまず
会員クラスがあってビデオクラスがある
貸出管理クラスで両者の情報を参照して貸出処理する
そのほか料金クラスや期日クラスも要るだろう
ここら辺はそんなに極端な差は出ないと思う
2017/09/30(土) 18:02:34.49ID:kOdc4YYr
要件定義しろよ
2017/09/30(土) 18:03:44.48ID:e3HOpbVM
2017/09/30(土) 18:07:45.62ID:e3HOpbVM
>要件定義
・ビデオ(DVD/CD)の貸出を処理できる
→ 料金や期日ももちろん提示する
・ビデオが貸出中や貸出可能かどうか検索できる
・貸出期限を過ぎた会員を検索できる
必要最低限の要件はざっくりこんな感じ
もちろん実務だと会員が何百万人いて
DBの性能要件とかあるだろうが
お題であまり複雑にしても仕様がない
・ビデオ(DVD/CD)の貸出を処理できる
→ 料金や期日ももちろん提示する
・ビデオが貸出中や貸出可能かどうか検索できる
・貸出期限を過ぎた会員を検索できる
必要最低限の要件はざっくりこんな感じ
もちろん実務だと会員が何百万人いて
DBの性能要件とかあるだろうが
お題であまり複雑にしても仕様がない
2017/09/30(土) 18:09:20.88ID:e3HOpbVM
あ、会員やビデオの登録や更新
(CRUD)はもちろん必要
穴だらけだけどそこら辺は
みんなでつついてくれ
(CRUD)はもちろん必要
穴だらけだけどそこら辺は
みんなでつついてくれ
2017/09/30(土) 18:15:20.93ID:kOdc4YYr
図が描けないのが辛いな
2017/09/30(土) 18:27:16.20ID:kOdc4YYr
ユースケース
客
CD/DVDを借りる
CD/DVDを返す
CD/DVDを借りパクする
店員
店員登録
店員削除
ログイン
ログアウト
会員登録手続きをする
会員退会手続きをする
CD/DVDを借りる手続きをする
CD/DVDを返す手続きをする
CD/DVDを期限切れても返さない客に催促する
客
CD/DVDを借りる
CD/DVDを返す
CD/DVDを借りパクする
店員
店員登録
店員削除
ログイン
ログアウト
会員登録手続きをする
会員退会手続きをする
CD/DVDを借りる手続きをする
CD/DVDを返す手続きをする
CD/DVDを期限切れても返さない客に催促する
2017/09/30(土) 18:56:27.94ID:kOdc4YYr
店員
CD/DVDの状態取得
CD/DVDの新規登録
CD/DVDの削除
が無いと現在の状況がわからんのと
新しい商品の登録ができん
CD/DVDの状態取得
CD/DVDの新規登録
CD/DVDの削除
が無いと現在の状況がわからんのと
新しい商品の登録ができん
2017/09/30(土) 19:24:30.66ID:a814Aecf
もっとユーザー要求に近いところから整理したほうがいいのでは?
システム構想ありきでユースケース書いてるように見えるが
システム構想ありきでユースケース書いてるように見えるが
2017/09/30(土) 19:32:50.73ID:V9icv6B6
期限や料金は貸出案件オブジェクトの属性にしたくなるな
2017/09/30(土) 19:50:27.41ID:e3HOpbVM
2017/09/30(土) 19:54:01.39ID:e3HOpbVM
2017/09/30(土) 21:05:56.13ID:kOdc4YYr
データとしては
店員
会員
CD/DVD状態
貸出記録
返却記録
ぐらい?
店員
会員
CD/DVD状態
貸出記録
返却記録
ぐらい?
2017/10/01(日) 00:09:52.47ID:1iFDY5/1
2017/10/01(日) 00:12:42.40ID:1iFDY5/1
2017/10/01(日) 00:22:50.36ID:1iFDY5/1
実際ハロワとかの職業訓練ではjavaでレンタルビデオ店のシステムを作ろう
みたいのを一年かけてやる
で、書いたコードを手元に持ってて面接で見せるらしい
みたいのを一年かけてやる
で、書いたコードを手元に持ってて面接で見せるらしい
2017/10/01(日) 00:24:02.00ID:OSXVzYJs
2017/10/01(日) 00:27:40.81ID:1iFDY5/1
設計思想とはいうものの
実際は実装に引っ張られるので漠然と語ることなんてなかなかない
余程大規模じゃない限り会社の特性がありそれによって実装に制約が生じる
その点を考慮しての要求設計がなければまともなものはできない
実際は実装に引っ張られるので漠然と語ることなんてなかなかない
余程大規模じゃない限り会社の特性がありそれによって実装に制約が生じる
その点を考慮しての要求設計がなければまともなものはできない
2017/10/01(日) 00:36:13.26ID:kJ8csjIE
お題をもとに設計について議論しようとしてるスレ?
設計思想はあんまり関係ない?
もしそうなら
議論の対象を「CD/DVDの貸出」のユースケースに絞って
もう少し深く要件考えるといいんじゃないかな
貸せるかどうかの判定ルールだったり
レンタル価格の算定ルールだったり
設計思想はあんまり関係ない?
もしそうなら
議論の対象を「CD/DVDの貸出」のユースケースに絞って
もう少し深く要件考えるといいんじゃないかな
貸せるかどうかの判定ルールだったり
レンタル価格の算定ルールだったり
2017/10/01(日) 00:47:39.82ID:OSXVzYJs
2017/10/01(日) 01:08:19.74ID:2Js2C5Pp
設計思想なのにデザパタって書いてあるスレタイが悪い
63デフォルトの名無しさん
2017/10/01(日) 01:46:01.01ID:8JYfigS0 >>54
顧客(特化: 会員/非会員)
店員
作品(属性: 保有数, 返却期限, 単価) (特化: CD/DVD)
→導出: 現在貸出中の数 & 貸出可能数
単品(属性: 識別子, 状態: 未貸出/未返却)
取引
顧客(特化: 会員/非会員)
店員
作品(属性: 保有数, 返却期限, 単価) (特化: CD/DVD)
→導出: 現在貸出中の数 & 貸出可能数
単品(属性: 識別子, 状態: 未貸出/未返却)
取引
64デフォルトの名無しさん
2017/10/01(日) 02:15:13.20ID:8JYfigS0 個人的には>>40兄貴の講義にも興味があるけどな。
具体例を上げて解説して欲しいところではあるが。
具体例を上げて解説して欲しいところではあるが。
2017/10/01(日) 03:15:06.12ID:kJ8csjIE
2017/10/01(日) 08:11:11.48ID:U1G3k+aG
>>62
少なくともデザパタと略す奴はクソ
少なくともデザパタと略す奴はクソ
2017/10/01(日) 09:21:28.30ID:Pf7aXXU9
機能一覧
店員登録
店員削除
ログイン
ログアウト
会員登録
会員退会
CD/DVD貸出
CD/DVD返却
CD/DVD期限切れ
CD/DVDの状態取得
CD/DVDの新規登録
CD/DVDの登録削除
こんなもんかな?
店員登録
店員削除
ログイン
ログアウト
会員登録
会員退会
CD/DVD貸出
CD/DVD返却
CD/DVD期限切れ
CD/DVDの状態取得
CD/DVDの新規登録
CD/DVDの登録削除
こんなもんかな?
2017/10/01(日) 09:29:30.28ID:Pf7aXXU9
あ、データの編集ができないな
店員編集
会員編集
CD/DVD編集
追加で
店員編集
会員編集
CD/DVD編集
追加で
2017/10/01(日) 09:32:16.58ID:Pf7aXXU9
機能一覧
店員登録
店員編集
店員削除
ログイン
ログアウト
会員登録
会員編集
会員退会
CD/DVD貸出
CD/DVD返却
CD/DVD期限切れ
CD/DVDの状態取得
CD/DVDの新規登録
CD/DVDの編集
CD/DVDの登録削除
こんなもんかな?
店員登録
店員編集
店員削除
ログイン
ログアウト
会員登録
会員編集
会員退会
CD/DVD貸出
CD/DVD返却
CD/DVD期限切れ
CD/DVDの状態取得
CD/DVDの新規登録
CD/DVDの編集
CD/DVDの登録削除
こんなもんかな?
2017/10/01(日) 09:38:53.88ID:Pf7aXXU9
よく考えたらログインログアウトいらんね
削除ね
機能概要
店員登録
店員情報を店員Tblに登録する
店員編集
店員情報を編集する
店員削除
店員情報を削除(休眠)する
会員登録
会員情報を会員Tblに登録する
会員編集
会員情報を編集する
会員削除
会員情報を削除(休眠)する
削除ね
機能概要
店員登録
店員情報を店員Tblに登録する
店員編集
店員情報を編集する
店員削除
店員情報を削除(休眠)する
会員登録
会員情報を会員Tblに登録する
会員編集
会員情報を編集する
会員削除
会員情報を削除(休眠)する
2017/10/01(日) 09:45:39.43ID:Pf7aXXU9
機能概要
CD/DVD貸出
貸出情報を貸出tblに登録する
CD/DVD返却
返却情報を返却tblに登録する
CD/DVD期限切れ
期限切れの貸出情報を表示する
CD/DVDの状態取得
CD/DVD情報を表示する
CD/DVDの新規登録
CD/DVD情報をCD/DVDtblに登録する
CD/DVDの編集
CD/DVD情報を編集する
CD/DVDの登録削除
CD/DVD情報を削除(休眠)する
できた
CD/DVD貸出
貸出情報を貸出tblに登録する
CD/DVD返却
返却情報を返却tblに登録する
CD/DVD期限切れ
期限切れの貸出情報を表示する
CD/DVDの状態取得
CD/DVD情報を表示する
CD/DVDの新規登録
CD/DVD情報をCD/DVDtblに登録する
CD/DVDの編集
CD/DVD情報を編集する
CD/DVDの登録削除
CD/DVD情報を削除(休眠)する
できた
2017/10/01(日) 09:48:38.07ID:Pf7aXXU9
俺はここまでで組めちゃうかも
オブジェクト指向設計とかいらね
オブジェクト指向設計とかいらね
73デフォルトの名無しさん
2017/10/01(日) 10:47:47.46ID:8JYfigS0 >>72
成果物見せてくれよな~頼むよ~
成果物見せてくれよな~頼むよ~
2017/10/01(日) 11:04:11.15ID:OXD0q5aq
>>73
これ、それぞれ設定画面作って
OKボタンの処理でDB操作するだけだわ
これ作ってもらわなわからんって言うなら
掲示板で設計の話は無理なのかもしれん
ちなみに俺もテキトーに考えたので抜けやらなんやらあってもわからん
これ、それぞれ設定画面作って
OKボタンの処理でDB操作するだけだわ
これ作ってもらわなわからんって言うなら
掲示板で設計の話は無理なのかもしれん
ちなみに俺もテキトーに考えたので抜けやらなんやらあってもわからん
2017/10/01(日) 11:33:35.29ID:OXD0q5aq
機能概要
CD/DVD紛失
CD/DVD紛失情報をCD/DVD紛失tblに登録する
もいるかも
CD/DVD紛失
CD/DVD紛失情報をCD/DVD紛失tblに登録する
もいるかも
76デフォルトの名無しさん
2017/10/01(日) 11:45:19.69ID:8JYfigS0 ・要求設計や上流工程の本読んでるといつもそうだが、
実際に自分とは関係ない具体例出されると集中力が保てなくてすぐに
眠くなってしまう。
・いや、実際に自分が手がけている案件だって同じだ、議論領域に対して
正直な所興味が持てない。
・つまりプログラミングやアーキテクチャには興味があるが、
ドメイン領域に対して学習意欲がわかないというかなんというか。
実際に自分とは関係ない具体例出されると集中力が保てなくてすぐに
眠くなってしまう。
・いや、実際に自分が手がけている案件だって同じだ、議論領域に対して
正直な所興味が持てない。
・つまりプログラミングやアーキテクチャには興味があるが、
ドメイン領域に対して学習意欲がわかないというかなんというか。
2017/10/01(日) 12:09:25.63ID:OXD0q5aq
>>76
周りが見えてないから
なんで後から追加・変更するの?
とか起きないためには
受け取った要件定義書や設計書を
自分がその資料をデバッグできなければならない
ここで漏れがあったらこれで作成できますと言った自分にもある程度の責任はついてくる
俺が出した機能概要で君はソフトウェアを作れるの?
作れないなら足りないところを言って
後からアレがないコレがない騒がないでよ
これで見積りを出すから
って状況なら嫌でも興味が湧くだろ?
周りが見えてないから
なんで後から追加・変更するの?
とか起きないためには
受け取った要件定義書や設計書を
自分がその資料をデバッグできなければならない
ここで漏れがあったらこれで作成できますと言った自分にもある程度の責任はついてくる
俺が出した機能概要で君はソフトウェアを作れるの?
作れないなら足りないところを言って
後からアレがないコレがない騒がないでよ
これで見積りを出すから
って状況なら嫌でも興味が湧くだろ?
78【演習】
2017/10/10(火) 12:26:46.70ID:gurV1EfO ・次のクライアントへのインタビューを読み、
設問に解答してください。
やったぜ。 者:変態糞土方 (8月16日(水)07時14分22秒)
昨日の8月15日にいつもの浮浪者のおっさん(60歳)と先日メールくれた汚れ好きの土方のにいちゃん
(45歳)とわし(53歳)の3人で県北にある川の土手の下で盛りあったぜ。
今日は明日が休みなんでコンビニで酒とつまみを買ってから滅多に人が来ない所なんで、
そこでしこたま酒を飲んでからやりはじめたんや。
3人でちんぽ舐めあいながら地下足袋だけになり持って来たいちぢく浣腸を3本ずつ入れあった。
しばらくしたら、けつの穴がひくひくして来るし、糞が出口を求めて腹の中でぐるぐるしている。
浮浪者のおっさんにけつの穴をなめさせながら、兄ちゃんのけつの穴を舐めてたら、
先に兄ちゃんがわしの口に糞をドバーっと出して来た。
それと同時におっさんもわしも糞を出したんや。もう顔中、糞まみれや、
3人で出した糞を手で掬いながらお互いの体にぬりあったり、
糞まみれのちんぽを舐めあって小便で浣腸したりした。ああ〜〜たまらねえぜ。
しばらくやりまくってから又浣腸をしあうともう気が狂う程気持ちええんじゃ。
浮浪者のおっさんのけつの穴にわしのちんぽを突うずるっ込んでやると
けつの穴が糞と小便でずるずるして気持ちが良い。
にいちゃんもおっさんの口にちんぽ突っ込んで腰をつかって居る。
糞まみれのおっさんのちんぽを掻きながら、思い切り射精したんや。
それからは、もうめちゃくちゃにおっさんと兄ちゃんの糞ちんぽを舐めあい、
糞を塗りあい、二回も男汁を出した。もう一度やりたいぜ。
やはり大勢で糞まみれになると最高やで。こんな、変態親父と糞あそびしないか。
ああ〜〜早く糞まみれになろうぜ。
岡山の県北であえる奴なら最高や。わしは163*90*53,おっさんは165*75*60、や
糞まみれでやりたいやつ、至急、メールくれや。
土方姿のまま浣腸して、糞だらけでやろうや。
設問に解答してください。
やったぜ。 者:変態糞土方 (8月16日(水)07時14分22秒)
昨日の8月15日にいつもの浮浪者のおっさん(60歳)と先日メールくれた汚れ好きの土方のにいちゃん
(45歳)とわし(53歳)の3人で県北にある川の土手の下で盛りあったぜ。
今日は明日が休みなんでコンビニで酒とつまみを買ってから滅多に人が来ない所なんで、
そこでしこたま酒を飲んでからやりはじめたんや。
3人でちんぽ舐めあいながら地下足袋だけになり持って来たいちぢく浣腸を3本ずつ入れあった。
しばらくしたら、けつの穴がひくひくして来るし、糞が出口を求めて腹の中でぐるぐるしている。
浮浪者のおっさんにけつの穴をなめさせながら、兄ちゃんのけつの穴を舐めてたら、
先に兄ちゃんがわしの口に糞をドバーっと出して来た。
それと同時におっさんもわしも糞を出したんや。もう顔中、糞まみれや、
3人で出した糞を手で掬いながらお互いの体にぬりあったり、
糞まみれのちんぽを舐めあって小便で浣腸したりした。ああ〜〜たまらねえぜ。
しばらくやりまくってから又浣腸をしあうともう気が狂う程気持ちええんじゃ。
浮浪者のおっさんのけつの穴にわしのちんぽを突うずるっ込んでやると
けつの穴が糞と小便でずるずるして気持ちが良い。
にいちゃんもおっさんの口にちんぽ突っ込んで腰をつかって居る。
糞まみれのおっさんのちんぽを掻きながら、思い切り射精したんや。
それからは、もうめちゃくちゃにおっさんと兄ちゃんの糞ちんぽを舐めあい、
糞を塗りあい、二回も男汁を出した。もう一度やりたいぜ。
やはり大勢で糞まみれになると最高やで。こんな、変態親父と糞あそびしないか。
ああ〜〜早く糞まみれになろうぜ。
岡山の県北であえる奴なら最高や。わしは163*90*53,おっさんは165*75*60、や
糞まみれでやりたいやつ、至急、メールくれや。
土方姿のまま浣腸して、糞だらけでやろうや。
79デフォルトの名無しさん
2017/10/10(火) 12:32:35.43ID:gurV1EfO ↑上記「とうこう」者 : 変態糞土方の部分の
「とうこう」がNGワードになっていたので削除しています。
<補足>
・クライアントの変態糞土方さんは、この経験を元に、
「糞遊びの会」のサイトを新たに立ち上げたいと考えました。
・このサイトでは会員登録を行い、会員については年齢、身長、体重
それから住所、性癖、空いている時間帯などを管理したいと考えています。
・このサイトでは会員/非会員などの間で掲示板でコミュニケーションを
とるソーシャルメディアとして活用したいようです。
・また、会員同士ではメッセージをやり取りし、オフ会を開くきっかけ
を作りたいそうです。
<設問>
・1: この記述を元に、クラス図、業務フロー図、アクティビティ図、
ユースケース図/記述などを作成しなさい。
・2: 実装段階において活用できそうなデザインパターンについて
解答しなさい。
・3: このシステムの問題点はどのようなところにあるか考え、
実運用開始にあたって発生することが懸念されるインシデント
及びその対応策について述べなさい。
「とうこう」がNGワードになっていたので削除しています。
<補足>
・クライアントの変態糞土方さんは、この経験を元に、
「糞遊びの会」のサイトを新たに立ち上げたいと考えました。
・このサイトでは会員登録を行い、会員については年齢、身長、体重
それから住所、性癖、空いている時間帯などを管理したいと考えています。
・このサイトでは会員/非会員などの間で掲示板でコミュニケーションを
とるソーシャルメディアとして活用したいようです。
・また、会員同士ではメッセージをやり取りし、オフ会を開くきっかけ
を作りたいそうです。
<設問>
・1: この記述を元に、クラス図、業務フロー図、アクティビティ図、
ユースケース図/記述などを作成しなさい。
・2: 実装段階において活用できそうなデザインパターンについて
解答しなさい。
・3: このシステムの問題点はどのようなところにあるか考え、
実運用開始にあたって発生することが懸念されるインシデント
及びその対応策について述べなさい。
80【演習】
2017/10/14(土) 12:20:09.78ID:YZBwJ7NO あぁ^~速く回答まみれになろうぜ。
回答したいやつ。至急レスくれや。
回答したいやつ。至急レスくれや。
2017/10/14(土) 12:49:39.56ID:6KISst0f
まずは言い出しっぺがやれと
2017/10/15(日) 21:27:55.88ID:NUNtAlCN
バージョンアップ時の設計について質問
今回バージョン1.0.0のアプリをバージョン1..0.1にしようとしています。
その時に1.0.0ではなかったソフトを1.0.1では導入しようと思っています
・1.0.0:アプリAのみ
・1.0.1:アプリA+別アプリB+テキストファイル
※ファイル通信を行っていたものがもともとアプリA
バージョンアップでアプリAからファイル通信機能を無くし
別アプリBにファイル通信機能を持たすことになっています
バージョンアップするときはアプリAの上書+アプリBの導入で良いのですが、
バージョンダウンする時アプリBとテキストファイルが1.0.0では不必要なので削除しないといけないです。
このようなとき、ファイルを削除するのであればバージョンを判断して削除したり削除しなかったりを
決める以外に判断材料はないでしょうか?
バージョンで判断して削除するような設計しようとしていたのですがバージョン自体はアプリAに埋め込まれているため
インストールをしたアプリのバージョン取得をできません
また、次回起動時に削除してしまえばいいのかと思っていたのですが、バージョンが古いアプリAだと別アプリBの存在を知らないため削除できません
インストール時に何かしら判断する方法をアドバイスほしいです
テキストファイルにはアプリBの処理の分岐処理に使うようなキーを書く予定で
これを上手く使えないかなと考えています
今回バージョン1.0.0のアプリをバージョン1..0.1にしようとしています。
その時に1.0.0ではなかったソフトを1.0.1では導入しようと思っています
・1.0.0:アプリAのみ
・1.0.1:アプリA+別アプリB+テキストファイル
※ファイル通信を行っていたものがもともとアプリA
バージョンアップでアプリAからファイル通信機能を無くし
別アプリBにファイル通信機能を持たすことになっています
バージョンアップするときはアプリAの上書+アプリBの導入で良いのですが、
バージョンダウンする時アプリBとテキストファイルが1.0.0では不必要なので削除しないといけないです。
このようなとき、ファイルを削除するのであればバージョンを判断して削除したり削除しなかったりを
決める以外に判断材料はないでしょうか?
バージョンで判断して削除するような設計しようとしていたのですがバージョン自体はアプリAに埋め込まれているため
インストールをしたアプリのバージョン取得をできません
また、次回起動時に削除してしまえばいいのかと思っていたのですが、バージョンが古いアプリAだと別アプリBの存在を知らないため削除できません
インストール時に何かしら判断する方法をアドバイスほしいです
テキストファイルにはアプリBの処理の分岐処理に使うようなキーを書く予定で
これを上手く使えないかなと考えています
2017/10/15(日) 21:48:21.63ID:hZRxEBGG
>>82
デスクトップアプリの話?
1つのアプリの中のコンポーネントとして
AとBとテキストファイルがあるという理解でいい?
スイート製品でアプリBのみのアンインストールや
アプリAのみのアンインストールやバージョンアップができるの?
内容からして前者だと思うけど
その場合AやBはアプリとは呼ばない気がする
デスクトップアプリの話?
1つのアプリの中のコンポーネントとして
AとBとテキストファイルがあるという理解でいい?
スイート製品でアプリBのみのアンインストールや
アプリAのみのアンインストールやバージョンアップができるの?
内容からして前者だと思うけど
その場合AやBはアプリとは呼ばない気がする
2017/10/15(日) 21:54:18.75ID:hZRxEBGG
>>82
一般的にバージョンダウン時は
インストール済みバージョンのアンインストーラを使ってアンインストールしてから
旧バージョンをインストールしてもらう
アンインストールせずに旧バージョンをインストールしようとしたら
新バージョンがインストールされてることを検知して
アンインストールするかどうかをユーザーに確認する
アンインストーラをキックして
アンインストール後に旧バージョンのインストーラに制御を戻すことも可能
一般的にバージョンダウン時は
インストール済みバージョンのアンインストーラを使ってアンインストールしてから
旧バージョンをインストールしてもらう
アンインストールせずに旧バージョンをインストールしようとしたら
新バージョンがインストールされてることを検知して
アンインストールするかどうかをユーザーに確認する
アンインストーラをキックして
アンインストール後に旧バージョンのインストーラに制御を戻すことも可能
2017/10/15(日) 22:00:13.06ID:NUNtAlCN
>>83
デスクトップアプリです
前提:PC1の持つデータをPC2にインストールする
バージョン変更のボタン1つのみ(バージョンアップ・バージョンダウンの個別ボタン無し)
※PC1が持つデータがただ古いか新しいかの違いのみ
1つのアプリのコンポーネントとして〜というよりは
システム全体でAの実行ファイルとBの実行ファイルとテキストがあるって感じです
システムって言うと抽象化なのかな・・・?
あるシステムには今までは実行ファイルAしかなく、今度のアップデートからからは
実行ファイルAと実行ファイルBとテキストファイルになる
単体でのアップデートなどはできず
アップデートってすると前提にある様にPC1にあるデータを全てPC2に書き込む流れです
デスクトップアプリです
前提:PC1の持つデータをPC2にインストールする
バージョン変更のボタン1つのみ(バージョンアップ・バージョンダウンの個別ボタン無し)
※PC1が持つデータがただ古いか新しいかの違いのみ
1つのアプリのコンポーネントとして〜というよりは
システム全体でAの実行ファイルとBの実行ファイルとテキストがあるって感じです
システムって言うと抽象化なのかな・・・?
あるシステムには今までは実行ファイルAしかなく、今度のアップデートからからは
実行ファイルAと実行ファイルBとテキストファイルになる
単体でのアップデートなどはできず
アップデートってすると前提にある様にPC1にあるデータを全てPC2に書き込む流れです
2017/10/15(日) 22:21:48.24ID:hZRxEBGG
>>85
おーん、、、何やら変わったアプリだね….
それはいいとしてアップデート=バージョンアップだよね?
でアップデートする場合はPC1にあるデータをPC2に書き込むのはわかったけど
バージョンダウンする場合はPC2の実行ファイルAを古いバージョンにして
かつ不要な実行ファイルBとテキストファイルを削除したいってことでいい?
だとすれば実行ファイルAを古いバージョンにする時に
実行ファイルBとテキストファイルを削除すればいいと思うんだけど?
質問を理解できてないのかもしれんが
それが出来ない理由がいまいち分からん
おーん、、、何やら変わったアプリだね….
それはいいとしてアップデート=バージョンアップだよね?
でアップデートする場合はPC1にあるデータをPC2に書き込むのはわかったけど
バージョンダウンする場合はPC2の実行ファイルAを古いバージョンにして
かつ不要な実行ファイルBとテキストファイルを削除したいってことでいい?
だとすれば実行ファイルAを古いバージョンにする時に
実行ファイルBとテキストファイルを削除すればいいと思うんだけど?
質問を理解できてないのかもしれんが
それが出来ない理由がいまいち分からん
2017/10/15(日) 22:33:38.63ID:NUNtAlCN
>>86
アップデート=バージョンアップで問題なしです
やりたいことも、削除したいってことでOKです
あー今気づきました
ファイルAを古いバージョンにする時にこいつが古いバージョンだ!って判断するのが
どうやってすれば良いんだろうと悩んでるところです。。。
アップデート=バージョンアップで問題なしです
やりたいことも、削除したいってことでOKです
あー今気づきました
ファイルAを古いバージョンにする時にこいつが古いバージョンだ!って判断するのが
どうやってすれば良いんだろうと悩んでるところです。。。
2017/10/15(日) 23:09:31.05ID:hZRxEBGG
>>87
インストーラとかアンインストーラとかはあるんだよね??
1.0.1のAがインストール済みの環境で
1) 1.0.0のインストーラ/アンインストーラが起動された場合
対応バージョンより新しいのが入ってるのを検知して新バージョンのインストーラ/アンインストーラを使うように促す
(バージョンダウン時は新バージョンのアンインストールをしてから再度旧バージョンのインストーラを使ってもらう)
2) 1.0.1のインストーラ/アンインストーラが起動された場合
Bやテキストファイルの存在を知ってるので削除可能だよね?
バージョンダウンに直接対応したアンインストーラ兼インストーラを用意する場合も同じ
世の中一般のパッケージソフトはおおよそ上の仕組み使ってる
旧バージョンのインストーラが使えない状況で
バージョンアップ時に旧バージョンのAを退避しておく必要があるとかそういうことなのかな?
インストーラとかアンインストーラとかはあるんだよね??
1.0.1のAがインストール済みの環境で
1) 1.0.0のインストーラ/アンインストーラが起動された場合
対応バージョンより新しいのが入ってるのを検知して新バージョンのインストーラ/アンインストーラを使うように促す
(バージョンダウン時は新バージョンのアンインストールをしてから再度旧バージョンのインストーラを使ってもらう)
2) 1.0.1のインストーラ/アンインストーラが起動された場合
Bやテキストファイルの存在を知ってるので削除可能だよね?
バージョンダウンに直接対応したアンインストーラ兼インストーラを用意する場合も同じ
世の中一般のパッケージソフトはおおよそ上の仕組み使ってる
旧バージョンのインストーラが使えない状況で
バージョンアップ時に旧バージョンのAを退避しておく必要があるとかそういうことなのかな?
2017/10/16(月) 01:04:43.52ID:BLPcXnhp
>>82
バージョニングが複雑になるときは
1. バージョンの記述を設定ファイルに外出しする
2. AとBと実行ファイルごとにバージョンを振る
3. バージョン変更するためのバッチや専用アプリを書く
上のどれかでだいたい行けるはず
番号が小さいほど導入の手間が少ない
バージョニングが複雑になるときは
1. バージョンの記述を設定ファイルに外出しする
2. AとBと実行ファイルごとにバージョンを振る
3. バージョン変更するためのバッチや専用アプリを書く
上のどれかでだいたい行けるはず
番号が小さいほど導入の手間が少ない
2017/10/16(月) 01:42:27.84ID:1MDONeW4
>>82
とりあえずセマンティックバージョニングでググってこい
とりあえずセマンティックバージョニングでググってこい
91デフォルトの名無しさん
2017/10/16(月) 01:57:49.59ID:t2YDIrX7 ______
,;i|||||||||||||||||||||||||||||||ii;、 _/
/||||||||||||||||||||||||||||||||||||||ii;、 \
/ ̄ ̄\||||||||||||||||||||||||||||||||||||ii;゙ヽ, /
'" ̄ヽ ヽ!!|||||||||||||||| ||||||||||!!"ヘ < セマンティックageるよ
ヽ ゙!!!|||||||||||| |||||||!! iヽ── /
|||l ゙゙ヽ、ll,,‐''''"" | ヽ||||||||| セマンティックageるよ
|||l ____ ゙l __ \|||||||||
||!' /ヽ、 o゙>┴<"o /\ |'" ̄| ホントの勇気 見せてくれたら
\ / |ミミヽ──‐'"ノ≡- ゙'──''彡| |、 | |
 ̄| |ミミミ/" ̄ 、,,/|l ̄"'''ヽ彡|| |、/ / セマンティックageるよ
ヽ、l| |ミミミ| |、────フヽ |彡l| |/ /_
\/|l |ミミミ| \_/ ̄ ̄フ_/ |彡|l/  ̄/ セマンティックageるよ
\ ノ l|ミミミ| \二二、_/ |彡| フ
 ̄\ l|ミミミ|  ̄ ̄ ̄ |メ/ \ トキメク胸に キラキラ光った
| \ ヽ\ミヽ  ̄ ̄"' |/ /
/ \ヽ、ヾ''''ヽ、_____// /_ バージョンをageるよ
/ ヽ ゙ヽ─、──────'/|  ̄/
. / ゙\ \ / / \__
───'''" ̄ ̄ ゙゙̄ヽ、__,,/,-'''" ̄ ゙''─
,;i|||||||||||||||||||||||||||||||ii;、 _/
/||||||||||||||||||||||||||||||||||||||ii;、 \
/ ̄ ̄\||||||||||||||||||||||||||||||||||||ii;゙ヽ, /
'" ̄ヽ ヽ!!|||||||||||||||| ||||||||||!!"ヘ < セマンティックageるよ
ヽ ゙!!!|||||||||||| |||||||!! iヽ── /
|||l ゙゙ヽ、ll,,‐''''"" | ヽ||||||||| セマンティックageるよ
|||l ____ ゙l __ \|||||||||
||!' /ヽ、 o゙>┴<"o /\ |'" ̄| ホントの勇気 見せてくれたら
\ / |ミミヽ──‐'"ノ≡- ゙'──''彡| |、 | |
 ̄| |ミミミ/" ̄ 、,,/|l ̄"'''ヽ彡|| |、/ / セマンティックageるよ
ヽ、l| |ミミミ| |、────フヽ |彡l| |/ /_
\/|l |ミミミ| \_/ ̄ ̄フ_/ |彡|l/  ̄/ セマンティックageるよ
\ ノ l|ミミミ| \二二、_/ |彡| フ
 ̄\ l|ミミミ|  ̄ ̄ ̄ |メ/ \ トキメク胸に キラキラ光った
| \ ヽ\ミヽ  ̄ ̄"' |/ /
/ \ヽ、ヾ''''ヽ、_____// /_ バージョンをageるよ
/ ヽ ゙ヽ─、──────'/|  ̄/
. / ゙\ \ / / \__
───'''" ̄ ̄ ゙゙̄ヽ、__,,/,-'''" ̄ ゙''─
2017/10/16(月) 02:54:09.09ID:VwEzpL/B
2017/10/16(月) 06:50:27.77ID:1MDONeW4
94デフォルトの名無しさん
2017/10/17(火) 17:20:41.06ID:IfQVHUWW アナリシスパターンとデザインパターンの関連性
って対応表みたいなのあるかな?
って対応表みたいなのあるかな?
2017/10/17(火) 18:12:49.12ID:G9wCIPXR
2017/10/19(木) 19:00:09.75ID:WUKQrCUm
フリーでUMLデザインツールといえば、なにがおすすめですか?
2017/10/19(木) 20:17:05.58ID:JScZcAYQ
astah
2017/10/22(日) 17:38:17.57ID:O4jMcQm7
設計のご相談
あるソフトのバージョンアップをしたいと考えている
んでもってそのバージョンアップに伴い既存ファイルに新しいキーが追加される
その状況で考えて欲しいです
そのファイルは現在インストーラーが上書きすることになっているため新バージョンがリリースされる度に上書きされます
そのためキーの値を保持し続けることができません
(キーは書き換える可能性があるものです)
インストーラを変更させずにキーを保持し続ける方法無いでしょうか
キー変更をするためのバッチファイルを準備しようとは思っていますがそれを使ってなんとかならないものだろうか
例
1.0が現在のキーなし
1.1が新しくキー追加
1.2がキー追加などなくバージョンアップのとき
1.1でキー追加→バッチファイルを実行しキー値を変更する→1.2のバージョン上げるとキーがデフォルトに戻る
あるソフトのバージョンアップをしたいと考えている
んでもってそのバージョンアップに伴い既存ファイルに新しいキーが追加される
その状況で考えて欲しいです
そのファイルは現在インストーラーが上書きすることになっているため新バージョンがリリースされる度に上書きされます
そのためキーの値を保持し続けることができません
(キーは書き換える可能性があるものです)
インストーラを変更させずにキーを保持し続ける方法無いでしょうか
キー変更をするためのバッチファイルを準備しようとは思っていますがそれを使ってなんとかならないものだろうか
例
1.0が現在のキーなし
1.1が新しくキー追加
1.2がキー追加などなくバージョンアップのとき
1.1でキー追加→バッチファイルを実行しキー値を変更する→1.2のバージョン上げるとキーがデフォルトに戻る
2017/10/22(日) 18:01:22.02ID:rLFHcAK9
インストーラーを変更しない理由が見当たらないけど
インストーラーの仕様漏れをなんとかリカバリできないかと苦労してるって話なのかな?
インストーラーの仕様漏れをなんとかリカバリできないかと苦労してるって話なのかな?
2017/10/22(日) 18:25:10.12ID:O4jMcQm7
101デフォルトの名無しさん
2017/10/22(日) 20:57:40.70ID:rLFHcAK9 設計というか仕様の話だよね
インストーラーが本来すべき仕事だったそのバッチプログラムで肩代わりするしかない
バッチプログラムにキーの退避・復旧機能を入れてインストーラーの前後で実行してもらう
サポート対応コストを考えるとインストーラー修正のほうが絶対に安上がり
それにバッチプログラムで尻拭いするとしても
インストーラー担当にケツを拭かせるようにしないとろくな事にならないよ
インストーラーが本来すべき仕事だったそのバッチプログラムで肩代わりするしかない
バッチプログラムにキーの退避・復旧機能を入れてインストーラーの前後で実行してもらう
サポート対応コストを考えるとインストーラー修正のほうが絶対に安上がり
それにバッチプログラムで尻拭いするとしても
インストーラー担当にケツを拭かせるようにしないとろくな事にならないよ
102デフォルトの名無しさん
2017/10/22(日) 21:30:46.03ID:O4jMcQm7 やはりインストーラを修正しかないか...
インストーラ修正はテストの範囲が膨大になるからしたくなかったが...
キーの退避・復旧機能って言うとどうやってやるもんなんだろ
やっぱりtmpファイルを作っておくものかね?
インストーラ修正はテストの範囲が膨大になるからしたくなかったが...
キーの退避・復旧機能って言うとどうやってやるもんなんだろ
やっぱりtmpファイルを作っておくものかね?
103デフォルトの名無しさん
2017/10/23(月) 03:43:06.87ID:JrZmYN5x イベントや状態遷移の設計についておすすめの書籍ある?
104デフォルトの名無しさん
2017/10/24(火) 07:17:31.51ID:HCv33Y/u クラス設計をした結果継承もまったくなく1つのクラスに収まったんだけどそれってクラスにする必要あるもんなんかね?
105デフォルトの名無しさん
2017/10/24(火) 07:43:46.41ID:vrotHuwu >>104
継承は必須じゃない
継承は必須じゃない
106デフォルトの名無しさん
2017/10/24(火) 07:48:45.93ID:XO9ImU8w107デフォルトの名無しさん
2017/10/24(火) 07:55:52.31ID:vrotHuwu108デフォルトの名無しさん
2017/10/24(火) 07:58:53.16ID:XO9ImU8w >>107
メソッド三つ四つあるかな
あるライブラリをc++で呼び出す(コマンド実行)ためのコーディングをするためにクラス設計
ライブラリは色々なプロトコル(HTTP,FTPなどなど)をサポートしてたからそれにあわせてクラス設計中
メンバ変数
・char プロトコル
・char ユーザ名
・char パスワード
・char 実行コマンド
※実行コマンドはexe -u ユーザ名 -pa パスワード -p プロトコル名 その他オプションみたいなsystemに渡す出来上がった形
ふるまい
・コンストラクタ(プロトコルやユーザ名やパスワードを引数とする)
・実行コマンド作成
・実行コマンド実行
・実行後の終了待機
メソッド三つ四つあるかな
あるライブラリをc++で呼び出す(コマンド実行)ためのコーディングをするためにクラス設計
ライブラリは色々なプロトコル(HTTP,FTPなどなど)をサポートしてたからそれにあわせてクラス設計中
メンバ変数
・char プロトコル
・char ユーザ名
・char パスワード
・char 実行コマンド
※実行コマンドはexe -u ユーザ名 -pa パスワード -p プロトコル名 その他オプションみたいなsystemに渡す出来上がった形
ふるまい
・コンストラクタ(プロトコルやユーザ名やパスワードを引数とする)
・実行コマンド作成
・実行コマンド実行
・実行後の終了待機
109デフォルトの名無しさん
2017/10/24(火) 08:08:53.99ID:vrotHuwu110デフォルトの名無しさん
2017/10/24(火) 09:50:41.14ID:XO9ImU8w111デフォルトの名無しさん
2017/10/24(火) 16:15:40.27ID:cjHIRFnx 特定のアカウントを使って接続して
いくつかのコマンドを順次実行したい場合に
利用者側がどういう使い方をしたいかによる
今後を含めて一つの関数を逐次実行するので十分であれば関数でいいかもね
いくつかのコマンドを順次実行したい場合に
利用者側がどういう使い方をしたいかによる
今後を含めて一つの関数を逐次実行するので十分であれば関数でいいかもね
112デフォルトの名無しさん
2017/10/24(火) 18:33:21.32ID:vrotHuwu >>110
ダメってことはないよ
別に関数でも組めるよ
だけど規模が大きくなると
だんだん引数が多くなっていって
呼び出しが複雑になっていくでしょ?
OOで組むなら
メンバ変数で状態を持って
なるべく引数を減らす
ダメってことはないよ
別に関数でも組めるよ
だけど規模が大きくなると
だんだん引数が多くなっていって
呼び出しが複雑になっていくでしょ?
OOで組むなら
メンバ変数で状態を持って
なるべく引数を減らす
113デフォルトの名無しさん
2017/10/27(金) 20:27:28.71ID:BY+fhh/f 概念設計と論理設計の違いって何?
114デフォルトの名無しさん
2017/10/29(日) 01:41:18.55ID:9lQAHngl >>113
ググレカス
ググレカス
115デフォルトの名無しさん
2017/11/01(水) 13:17:46.13ID:jWbqOBSl 独立性の高いモジュール設計するときって
引数少なくしたらまず独立性が高くなるかなって考えてるのだけど合ってる?
それ以外に考えることある?
引数少なくしたらまず独立性が高くなるかなって考えてるのだけど合ってる?
それ以外に考えることある?
116デフォルトの名無しさん
2017/11/01(水) 18:10:03.93ID:S3J9ewzc 参照を少なくする
117デフォルトの名無しさん
2017/11/01(水) 18:22:42.23ID:qEJO82f+ 独立性ってのは高凝集・疎結合の程度のことだよね?
引数の数って独立性に関係ある?
引数で渡されたオブジェクトのメソッドを呼び出すなら
関係してるけどそれは引数の数とはまた別だと思う
引数の数って独立性に関係ある?
引数で渡されたオブジェクトのメソッドを呼び出すなら
関係してるけどそれは引数の数とはまた別だと思う
118デフォルトの名無しさん
2017/11/01(水) 18:45:16.31ID:S3J9ewzc 引数で受け渡すのは独立性が高い
直接参照する方が依存性を高くする
直接参照する方が依存性を高くする
119デフォルトの名無しさん
2017/11/01(水) 23:18:18.43ID:cHQvRiDd 渡す引数によるけども渡す引数がそれぞれで依存するようなものならば独立性が低いと言える気がする
120デフォルトの名無しさん
2017/11/01(水) 23:27:23.87ID:qEJO82f+121デフォルトの名無しさん
2017/11/02(木) 00:51:44.64ID:pq+UNRec たとえば引数でパスを受け取って
ファイルを開いて何か処理する
モジュールがあったとすると
引数でも依存性は高い
ファイルを開いて何か処理する
モジュールがあったとすると
引数でも依存性は高い
122デフォルトの名無しさん
2017/11/02(木) 01:30:12.00ID:rd1E1A0+ 依存性の高い低いは相対的な指標だからさ
何と比べてってのが無いとあんまり意味なくね?
何と比べてってのが無いとあんまり意味なくね?
123デフォルトの名無しさん
2017/11/02(木) 21:33:00.65ID:PD3uBoNX 素朴な疑問なんですけどクラス図に書くフィールドがpublicになる事って実務の世界であるのでしょうか?
マイナス以外を書く事無さそうなので無記入で良いんじゃないかと
マイナス以外を書く事無さそうなので無記入で良いんじゃないかと
124デフォルトの名無しさん
2017/11/02(木) 22:14:33.07ID:Ic4nkIVo 世の中のあらゆる言語からpublicフィールドが無くなったら必要なくなるだろう。
125デフォルトの名無しさん
2017/11/02(木) 22:53:15.70ID:rd1E1A0+126デフォルトの名無しさん
2017/11/03(金) 16:06:43.40ID:JRMJYWYA127デフォルトの名無しさん
2017/11/04(土) 08:59:22.14ID:7D9PjzRB UMLとか書くのにペンタブ使うツールって無いんかね
あっても良さそうだけど。
あっても良さそうだけど。
128デフォルトの名無しさん
2017/11/04(土) 09:47:21.81ID:4lDAx3zT タブレットでUML編集か
商品化しろ
商品化しろ
129デフォルトの名無しさん
2017/11/05(日) 21:08:09.36ID:mJ5ylCwT130デフォルトの名無しさん
2017/11/06(月) 03:29:00.55ID:2Q/sT7xS ヤフーブログの https://blogs.yahoo.co.jp/kamyu_2010 にデザパタ解説を発見した。
131デフォルトの名無しさん
2017/11/06(月) 19:53:17.44ID:9L+ZJ2Xp ほとんど統合失調じゃねーかw
がんばれと言いたいがすでにがんばってる感じで
泣きながら床をのたうちまわりたい気分になった
がんばれ
がんばれと言いたいがすでにがんばってる感じで
泣きながら床をのたうちまわりたい気分になった
がんばれ
132デフォルトの名無しさん
2017/11/06(月) 20:06:56.27ID:9L+ZJ2Xp でも思考が破綻してるわけじゃないな
アスペか
これが本物のアスペなのか?
アスペか
これが本物のアスペなのか?
133デフォルトの名無しさん
2017/11/06(月) 20:47:07.11ID:tjV5ukzM たんに不器用なおっさんなんじゃね?
134デフォルトの名無しさん
2017/11/09(木) 12:48:24.46ID:hfkiYsiW 外注に出す時はどこまで口を挟んで良いのかな?
DDDの採用とか言って良いのかな
内部で使うとはいえ業務ソフトを丸投げして構造化プログラムで組まれたらキツいなと
DDDの採用とか言って良いのかな
内部で使うとはいえ業務ソフトを丸投げして構造化プログラムで組まれたらキツいなと
135デフォルトの名無しさん
2017/11/09(木) 18:40:45.86ID:oTLZ7Zqm 後で書き直しになったら外注する意味ないからな
といって外注でDDDでポンと出来るとも思えないが
といって外注でDDDでポンと出来るとも思えないが
136デフォルトの名無しさん
2018/01/31(水) 17:28:23.18ID:H4JZoijG UMLを書くツールって何使ってる?
PlantUMLを使ってるんだが、
アクティビティ図(ベータ版)で、ifの終わりに毎回「◇」が付くのって消せないかな?
それか、何か他に良いツールあったら教えてください
WORDやExcelやPowerPointで一つずつ書くのが確実なのかもしれんが
PlantUMLを使ってるんだが、
アクティビティ図(ベータ版)で、ifの終わりに毎回「◇」が付くのって消せないかな?
それか、何か他に良いツールあったら教えてください
WORDやExcelやPowerPointで一つずつ書くのが確実なのかもしれんが
137デフォルトの名無しさん
2018/02/01(木) 03:42:50.95ID:lCvV1P8G Astah
138デフォルトの名無しさん
2018/02/05(月) 08:42:38.92ID:EtfEhPH8 visioが良いらしい
あれはワードに張ったままでも編集できる
あれはワードに張ったままでも編集できる
139デフォルトの名無しさん
2018/02/07(水) 18:07:33.82ID:e8WHE/qt 画期的なデザインパターンってあるか?
140デフォルトの名無しさん
2018/02/07(水) 18:32:51.13ID:TRREltXp デザインパターン自体が画期的だった
141デフォルトの名無しさん
2018/02/07(水) 19:09:02.23ID:Rn2OhqN+142デフォルトの名無しさん
2018/02/16(金) 01:21:18.20ID:W1XJdyx1 ☆ 日本の、改憲を行いましょう。現在、衆議員と参議院の
両院で、改憲議員が3分の2を超えております。
『憲法改正国民投票法』、でググってみてください。国会の発議は
すでに可能です。平和は勝ち取るものです。お願い致します。☆☆
両院で、改憲議員が3分の2を超えております。
『憲法改正国民投票法』、でググってみてください。国会の発議は
すでに可能です。平和は勝ち取るものです。お願い致します。☆☆
143デフォルトの名無しさん
2018/05/23(水) 20:27:27.89ID:Au5e7VGg 僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
ZB5CI
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
ZB5CI
144デフォルトの名無しさん
2018/07/05(木) 01:19:49.66ID:RfoszcD2 CZZ
145デフォルトの名無しさん
2018/09/11(火) 10:22:11.65ID:8TFPOuLo PlantUMLで
if(判定)then([Yes])
else([No])
:例外処理;
endif
って書くと、「判定」の下に[No]の「例外処理」が来て右側が[Yes]になるけども、
判定の右側を[No]にして、判定の左側もしくは下側を[Yes]にする方法ってあります?
if(判定)then([Yes])
else([No])
:例外処理;
endif
って書くと、「判定」の下に[No]の「例外処理」が来て右側が[Yes]になるけども、
判定の右側を[No]にして、判定の左側もしくは下側を[Yes]にする方法ってあります?
146デフォルトの名無しさん
2019/01/13(日) 19:28:12.99ID:bepzLkLz astahでかけ
147デフォルトの名無しさん
2019/04/01(月) 18:33:42.70ID:DUI06/LX UML図をマウスでさくっとかける無料ソフト
カモン
カモン
148デフォルトの名無しさん
2019/04/02(火) 10:46:14.00ID:wiU9Z+Y4 マウスとか微調整出来なくてイラっとする
149デフォルトの名無しさん
2019/04/04(木) 20:20:49.51ID:dwkaTZV0■ このスレッドは過去ログ倉庫に格納されています
ニュース
- テレビ朝日 本社から男性が転落し死亡。関連会社社員か 当たった通行人が左肩軽傷 [阿弥陀ヶ峰★]
- 高市首相、トランプ米大統領に「早期に会いたい」 日中関係悪化受け… ★4 [BFU★]
- 【コメ】卸売業者「簡単に安売りできない」「大暴落起きれば大赤字に」 JA「新米の販売進度が近年になく遅い。コメの回転が悪い」 ★5 [Hitzeschleier★]
- 「これいいじゃん!!!」 セブン-イレブンの1620円で買える“1人用クリスマスケーキ”🎂に注目殺到「天才すぎる」 [パンナ・コッタ★]
- 高市早苗首相が天理教系企業に“巨額発注” 総額5000万円 本人は「政治団体の活動に必要な支出」と回答 ★2 [Hitzeschleier★]
- テレビ朝日本社から20~30代の関連会社社員とみられる男性が転落し死亡 六本木けやき坂通りの通行人にはけが人なし [少考さん★]
- 【速報】テレビ朝日本社から20代〜30代の男性が飛び降り自殺して死亡 東京・六本木 [597533159]
- 【高市速報】中国、最後通牒 [308389511]
- お前らダウナー系だよな
- 現役JKのお茶会スレ( ¨̮ )︎︎𖠚ᐝ182
- 【朗報】カニ漁バイト募集!急げ! [834922174]
- 精液がゼリー状で黄ばんでるせいで女と付き合う勇気ない
