題:
講師可以強迫您學習特定的編程語法/語言嗎?
Student
2018-10-25 20:57:25 UTC
view on stackexchange narkive permalink

作為課程的一部分,我的班級目前正在進一步學習我們的關係數據庫/ SQL。

我們目前的講師正在限制我們只能專門學習Oracle SQL語法,而不是允許我們選擇使用PostgreSQL ,MySQL,SQLite等。

由於與一年前在工作實習或學術研究中提到的那些系統一起工作時,由於使用替代系統而引起我們的偏愛時,我們被稱為甚至在討論這個問題。

這在英國境內是否可以限制學生使用首選的數據庫語法/軟件環境?


編輯添加:感謝您的見解和反饋。該帖子是代表我自己和六個班級成員發表的,他們不知道解決此問題的最佳途徑,但是由於這個社區,現在有了更清晰的了解。對於它的價值,我可以自信地說自己和我的同學對來自先前的教育,項目或工作的Oracle,MySQL和其他SQL Basics充滿信心,並且在學習新知識以保持進步方面沒有問題。

評論不作進一步討論;此對話已[移至聊天](https://chat.stackexchange.com/rooms/84930/discussion-on-question-by-student-can-a-lecturer-force-you-to-learn-a-具體-p)。
十四 答案:
problemofficer
2018-10-25 21:14:16 UTC
view on stackexchange narkive permalink

不,他們不能。但他們會讓您不及格。

講師通常會隨意控制所講材料的具體細節。因此,只要他們在課程範圍之內,他們就可以自由選擇任何技術或方言。

除非您想通過考試或通過該課程,否則任何人都不能強迫您學習任何東西。提交實驗室問題,您必須遵守他們的規則。

他們可能不認識其他方言,因此只能教(和評分)Oracle SQL。或者,他們可能會認為它是最好的方言,例如,由於廣泛的行業使用。

最後,儘管我也會對此感到惱火,但有時您必須將其吸納並通過課程。不幸的是,在學術界,講授相同(陳舊)材料長達20年的講師是一個現實。至少您可能會了解將來要避免的事情。

評論不作進一步討論;此對話已[移至聊天](https://chat.stackexchange.com/rooms/85334/discussion-on-answer-by-problem的問題規格)。
Patricia Shanahan
2018-10-25 21:28:51 UTC
view on stackexchange narkive permalink

除非課程描述中另有說明,否則講師可以為所有提交的課程和考試選擇語法。選擇一種特定的語法可以使授課混亂,並且可以簡化課程和考試的測試和評分。要通過該課程,您將必須學習Oracle SQL。從長遠來看,您在職業生涯中將必須學習很多材料,並且準確地按照您需要學習的內容上課並非總是可行的。獨立學習可能變得至關重要。

考慮使用您選擇的數據庫為自己的學習重複一些課程。

我想補充一下Patricia的出色回答,他說,如果最終以謀生為目的,那麼您將需要發展在相似的語言和框架之間移動以生存的能力。尤其是,SQL並不是一項值得珍惜的技術,因為它無處不在。而且,與每個人都選擇自己的版本時導師要做的工作量相比,您付出的額外努力是微不足道的。太瘋狂了就像一個業務,讓每個部門使用自己的SQL版本,然後嘗試將其標準化為單個數據庫。
Oleg Lobachev
2018-10-26 02:34:48 UTC
view on stackexchange narkive permalink

稍微改一下,您的問題是:

講師可以基於工具的特定方言來學習課程嗎?

我可以,我可以


但是我想強調一點與此不同的方面。適當的大學水平的授課(幾乎)永遠不會涉及具體的工具和語言。 這是關於概念的。

本學期我正在教授函數式編程。講座材料講述了Haskell。練習在Haskell中進行。如果有人將其提交給ML,他們肯定會失敗。但是函數式編程的概念正是本講座的實質。概念不會改變。

我完全希望學生能夠使用ML,Swift或其他語言進行編程,只要它是一種功能編程語言並且他們已經適應了語法即可。當然,他們會錯過一些概念。當然,他們會有一些他們在講座中沒有遇到的概念。但是基本的方法,通用的心態以及大多數概念仍然存在。而正是我的課程。

事實上,他們獲得成績後,可能一生都不會寫過一行Haskell。仍然使他們成為更好的程序員和計算機科學家。


我基本上可以替換單詞並獲得有關關係數據庫的相同陳述。學習Oracle的事實對您以後使用MySQL(或不使用MySQL)的能力幾乎沒有影響。無論如何,很多大公司都在使用Oracle。也許您的講師在Oracle方面比其他方面更流利,或者您的部門獲得瞭如此龐大的Oracle許可證,而該許可證不予使用是可恥的,或者完全不同。原因無關緊要,您必須學習Oracle。

您實際學習的是關係數據庫的基礎。這些基礎適用於所有* SQL事物,甚至不適用於某些事物。其他所有內容都是對語法和本地怪癖的次要適應,這不是大學教育的主題。

確實,“學習Oracle的事實對使用MySQL的能力幾乎沒有影響”。您必須使用*某種*現有語言,並且每種實現都有其不同之處。不過,如果您知道如何使用* any * SQL方言編寫查詢,則可以使用任何一種方言編寫查詢。在選擇和更新等方面,表在Oracle,PostgreSQL,MySQL等中的功能相同。某些特殊情況可能有所不同,但在現實世界中,您不一定總是在數據庫供應商中有選擇權,您可能只需要使用X和Y,而您只知道Z。
作為教育者,我們喜歡宣稱這種“概念不是特定的技術”的信念,但是我看不出有多少是真的。我的C ++學生對Java並不滿意,即使我每次都告訴他們95%相同和5%不同。我的大部分2年制學生轉入的4年制大學不接受C ++課程來滿足Java編程要求。職位發布顯然需要一個,而不是另一個。等等。
蘋果和谷歌劃分市場,主要使用非合作策略。微軟一直負責負擔得起的PC,而Macintosh等個人電腦則是奢侈的。現在,任何人都可以完全訪問並擁有一台完全可編程的計算機(而不是不能完全編程的android / apple智能設備)。誰能理性地否認這一點?不僅如此,Windows還可以很好地找到最佳解決方案。不犧牲性能,兼容性或負擔能力。
微軟的Windows 95-Windows 10時代確實是一個現代的奇蹟,現在隨著其他操作系統的興起。蘋果和谷歌等公司,越來越清楚我們所有人的幸運。我擔心,這個時代正在限制向類似於1980年代之前的更常規時間的轉變。那就是說,學術界從來沒有真正使用過諷刺的窗口來學習,它總是被歸入背景和不在現場。
現在,我敢肯定,公司將在95-win10操作系統的各個方面都採用appart。並複制它。但關鍵是蓋茨和艾倫創立的自由市場企業將永遠消失。
討論似乎有些偏離。技術_腐蝕_。還記得J#嗎?Perl?Tru64 UNIX?VAX?教授“用XY編程”的問題是,不贊成使用XY時,人們會迷失而無業。
@DanielR.Collins:很久以前,我成功地獲得了C#職位,但是在開始工作的前兩個星期,我只了解C ++和Java。它解決了。因此,概念,是的。
“職位招聘顯然需要一個職位,而不是另一個職位。”:但這僅說明了某些招聘人員的工作水平。一位熟練掌握C ++,Python和Haskell的經驗豐富的程序員,不會很難選擇Java或C#。是的,這將需要一些時間,但是我更願意給這樣的程序員一個Java的職位,而不是給那些在整個職業生涯中都只使用Java編程的人。
這對我來說是最好的答案,因為它直接解決了以下概念:大學教育是要讓學生理解總體原則,而不是特定的實現。通過陷入必須記住LIMIT vs TOP的特定細節,或者認為(外部)連接必須像“ WHERE table.col = othertable.othercol(+)”一樣進行操作(* shudder *,如果它正在發生),他們正在看不到那裡的大局,無法了解如何將相關數據存儲和鏈接在一起,並按組而不是逐行考慮
@DanielR.Collins-實用地說,所有主要的DBMS都應支持ANSI SQL,然後在其之上分層放置自己的語法特質。但是,大多數雇主傾向於只列出他們使用的工具,而不能真正欣賞它。除非您進行詳細的查詢調優或大量使用特定於平台的功能,否則如果您具備ANSI SQL的能力,則可以在大多數DBMS上勝任地編寫,而僅需要查找功能。
**“這是關於概念的。**”這是如此真實且如此準確。我通過學習BCPL來學習結構化編程。我在那門課程中學到的知識使自己自學C變得相對容易,因為那時我們實驗室中的PDP-11 / 34A上也可以使用它。但是我從BCPL學到的基本概念使得向C的過渡相當簡單。直到後來我才知道C實際上是BCPL的孫代。:)
正如Hardy所說,@dgnuff:採用了一種不同但相關的方式:“……因為語言消亡而思想卻沒有”。;)
是的,作為學者,我們每個人都有理解概念並獨立過渡到新語言的軼事。我也是。但是從我對學生和人力資源人群的看法來看,我對此持懷疑態度,通常是這樣。我希望看到有證據表明,未經新技術的特殊培訓的人所佔的比例非常可觀。如果真是這樣,整個職業培訓行業將不復存在。
xLeitix
2018-10-25 22:36:37 UTC
view on stackexchange narkive permalink

講師可以強迫您學習特定的編程語法/語言嗎?

當然可以。教師通常負責​​以他們認為最適合達到預期學習成果的任何方式來設計課程。在某些情況下(尤其是面向項目的課程),這可能意味著讓技術選擇留給學生開放,但對於其他課程,嚴格要求學生應該使用的技術可能是更可取的。

此外,我不會專門針對Oracle的使用發表評論,仍然有充分的理由使用您以前使用的內容。特別是,學習其他SQL方言本身可能是非常有價值的課程。它使您更好地了解SQL(標準化語言)的確切含義以及Postgres使用的特定實現的組成部分。

最後,實踐常常要求教師強制執行某些技術基本規則。我經常遇到這樣的情況:我嚴格要求大型班級的學生(400多名學生)使用特定的技術甚至是提交模板,因為從評分時間的角度來看,助教需要花費時間來獲取解決方案,這是不可接受的在他們開始評分之前先運行。顯然,這是一個極端的情況,但是您仍然需要了解,讓每個學生選擇自己的技術都會在評分工作方面迅速升級。

也就是說,您當然可以解決(例如在教學評估中),如果您認為使用您已經知道的SQL方言可以更好地達到課程的教學目標,但是正式的投訴沒有立足之路。 >

雖然我總體上喜歡這個答案,但我認為在第一段中提到“最適合達到預期的學習成果”時,您會給予最高的重視,並且我認為最後一段中提到的實用性是選擇此項的主要原因技術。那就是他所知道的,那就是他所習慣的。
@problemofficer這可能是正確的,也可能不是。我不認識你的老師。
Thomas
2018-10-25 22:48:31 UTC
view on stackexchange narkive permalink

退後一步:班上有多少學生?我猜是100。每個學生都有自己的偏好-不同的SQL方言,不同的學習速度和風格,不同的主題,不同的評估等。講師無法容納所有這些偏好,因此需要妥協。

讓講師適應您喜歡的SQL方言的工作可能僅增加10%。您可能認為這是合理的。但是,如果每個學生都有類似的住宿需求,那麼講師的工作量突然會增加1000%。顯然這是不切實際的。

從講師的角度來看,控制課程的工作量至關重要。如果他或她開始適應請求,那麼它很快就會失控。嚴格是講師必須學習的技能。如果您希望有人根據自己的喜好量身定制所有內容,請聘請私人老師。

非常真實並且,這10%的額外工作量中的一些已經可以通過與a)可能的無休止的討論來解決:a)那些最喜歡該方言的學生被錄取了,現在他們抱怨說他們比使用班級主要方言的學生得到的物質和支持更少,並且b)*不*承認其最喜歡的方言的學生,並指出其他人也將其最喜歡的方言也承認了,為什麼他們的為什麼也不能被接納。(來源:個人經驗,甚至與同一種語言的方言無關,但完全與不同的編程語言有關。)
幾年前,我參加了文件組織和處理課程,助理教授說:“您可以將其以任何想要使用的語言系統上交,因為我可以閱讀它。如果不能,則您有責任教給我足夠的語言這樣我就可以對其評分。”對於使用“為您代勞”的語言有一個限制(這意味著您必須展示如何對分配進行編碼的知識……例如,您不能使用`.Sort`功能對內容進行排序)。
@J.ChrisCompton的評論讓我想起了我的論文顧問。他受命編寫一個矩陣乘法算法。在實驗室中,他發現了一個APL鍵盤。其餘的是單線的... :-D
Jon Custer
2018-10-25 23:39:00 UTC
view on stackexchange narkive permalink

當我不久前參加數值方法課程時,前幾個作業是在Fortran 77中完成的。在Fortran中進行了一些作業之後,這位教授又轉到APL,SPITBOL和C中的作業,每個作業都演示不同的語言如何允許問題以不同的方式被攻擊。沒有上課時間在教授這些語言上,我們應該閱讀手冊並在一周左右的時間內自行弄清楚。而且,我學到了很多關於今天仍在使用的不同語言和結構的信息。如果應該使用SPITBOL,則您可能會放棄SNOBOL(儘管您確實需要遞歸),但是Fortran不會成功。

是的,由於許多原因,教授可以定義作業的參數,包括具體內容,例如允許的編程語言。

SNOBOL有一些很酷的概念,尤其是在1960年代初期。但是從那以後就再也沒有使用過。
我在80年代初曾短暫使用SNOBOL!
1971年,我在大學裡被教給SNOBOL,而我在1999年遇到XSLT時,它變得更加容易。
@MichaelKay從未使用過SNOBOL,但曾經用XSLT融化了我的大腦,我不確定我是否應該將您的陳述作為對SNOBOL的認可或譴責。
好吧,SNOBOL和XSLT都有一個處理模型,該模型基於將輸入與模式進行匹配,並根據匹配的模式觸發適當的規則。我的意思是,如果您遇到一種使用該範式的語言,那麼選擇另一種語言會容易得多。如果您以前從未接觸過這種語言,那麼它很可能會融化您的大腦。計算中最強大的概念通常需要一定的掌握。
Fortran 77?哦,我們曾經夢想過寫Fortran 77!對我們來說,這將是一攬子奢侈品嗎?我們曾經在垃圾堆中的舊水箱中用COBOL進行編碼。我們每天早晨都有一大堆腐爛的魚倒在我們身上醒來!
儘管我喜歡SNOBOL的很多東西,但程序控制結構確實很爛。第一次任務後,我對它的編程失去了興趣。
我在大學期間就學習了SPITBOL,這是我的又一次投票,此後再也沒有機會使用它。作為每個人的第一個CGI腳本的標頭,Perl的混亂局面可能是SPITBOL的2行。我們可以發起一場運動來復興它嗎?
RAZ_Muh_Taz
2018-10-26 02:24:15 UTC
view on stackexchange narkive permalink

在我的整個學習和職業生涯中,我都使用多種語言,您可以肯定一些事情

  1. 在學校,老師總是對的,因此無論是上車還是下車
  2. 永遠不會有一種完美的語言可供所有人使用(SQL與mongoDB,C ++與JAVA,清單不勝枚舉)
  3. 學習不同的語言編程語言是程序員必不可少的技能
  4. ol>

    一位教授強迫學生使用不太受歡迎的語言或不受歡迎的語言是很棒的。它有助於您為現實世界做準備,在現實世界中您將遇到必須使用從未使用過的編程語言的工作/情況。在學校學習新語言的障礙將有助於您未來工作中學習新語言的障礙。

在不到一年前必須使用FORTRAN 77和Perl 4進行實際工作後,我可以保證能夠迅速學習新語言。
SQL vs MongoDB與C ++ vs Java有很大的不同。它更像是C ++ vs Haskell。
Amadeus-Reinstate-Monica
2018-10-29 16:36:45 UTC
view on stackexchange narkive permalink

是的,我可以控制自己的課程,並會決定您的工作中哪些值得加分,哪些不值得。我會先告訴您,還有很多時間讓您放手。

我不僅會要求您使用我所教的語法和語言(出於我自己的評分簡便性和結果一致性, (例如性能計時),但我會要求您遵循我的代碼格式規則,包括縮進,製表位,行長限制,變量名以及如何區分大小寫,並在代碼中添加註釋,以幫助我了解您的操作以及執行原因在做。

因為事實真相是,當您進入現實世界時,您會發現編寫工作代碼是不夠的,您的代碼需要可維護性並被其他人可讀。很有可能,您將不得不閱讀和調試其他人的代碼的TONS,然後您將不勝感激。

在我擔任教授之前,我曾是一家上市公司代碼部門的部門經理。新手經常要承擔測試和調試任務,以使他們熟悉代碼和系統,並評估他們的專業知識和生產力。

因此,IRL程序員首先轉到其他公司,部門或公司內的角色。 。因此,我們不僅需要不再與程序員一起處理代碼,而且高級程序員經常在關鍵的NEW項目的最後期限上工作,他們沒有時間調試幾年前的自己的代碼,甚至無法回答問題。

這使得代碼的可維護性非常重要,因為硬件和軟件庫以及操作系統和編譯器/解釋器的發布比我們的代碼庫更改速度快得多,並且破壞了系統。該代碼必須清晰,易於理解且易於遵循。我不希望任何僅能“正常工作”的“黑匣子”代碼,因為當它停止工作時,我不想重寫它來修復它。

所以我也在課堂上強加了它。是的,您的代碼必須有效,但這還不是整個等級。您必須使用我提供給您的工具,否則您就不會通過:因為真正的公司都有標準,甚至是您使用的編輯者,而我的任務都是使用給定工具進行的練習,

您還必須編寫符合我的代碼格式和註釋準則的代碼,那些代碼值得信等級。因為如果您給我(您的經理)以IRL作為編碼員,那麼我必須將其發送回給您以進行正確的格式設置,並且您需要花1或2天的時間才能獲得工作效率,因為您無法遵循簡單的清單書面指示。

課堂上的等值數字是您的成績,所以-10誤認為正確的答案對公司至關重要。 獲得答案的方式很重要,並且在離開或不再維護代碼之後,代碼的可維護性也很重要。

@CaiusJard是的,我在一家公司工作,每個工作站都必須是相同的,並且由sysadmins保持一致。相同的IDE,編輯器,調試器,編譯器,操作系統,庫,甚至在屏幕上相同位置的相同圖標。甚至目錄結構都是相同的。因此,任何人都可以坐在任何站上班或工作,或幫助某人發現錯誤或其他問題。個人風格或偏好也不例外。但是您已經習慣了,統一性和互換性確實提供了明顯的好處,尤其是對於遠程幫助:如果我的系統和您的系統相同,那麼我可以復制您的問題。
您將在最後一個學期的毫無價值的課程中做什麼?現在為時已晚。
@Joshua不是我的問題!當我告訴您第1天和第2天的要求時,如果您對他們感到非常惱怒,那麼您仍然有足夠的時間放棄學習,而不會受到任何成績或財務罰款,至少在我曾就讀過的大學中,作為學生或教授。相反,您所做的事與我無關,也不屬於我的責任。如果你想畢業,那就留在班上做我給你的工作。就像現實生活一樣:如果您想要薪水,您將按照老闆設定的規則進行工作,因為對您的老闆來說,如果您堅持按自己的方式做,那您的工作就不值錢了。
Fábio Dias
2018-10-25 22:36:04 UTC
view on stackexchange narkive permalink

教學不僅涉及演講,還必須準備材料,熟悉內容,準備練習,考試等。

您怎麼想教授會做到這一點而不限制方言?或者教授如何在不限制學生的情況下對學生公平?

示例:“我們贊成Oracle,但我們接受任何其他方言”。因此選擇在pgsql中執行此操作的學生將處於不利地位,因為該材料沒有為此準備,語法不同,示例將不起作用,等等...

但是我們添加了pgsql,因為它是眾所周知的。但是添加pgsql並且不使用mysql也沒有意義。什麼時候停止?

公平地說,對此有一個簡單的答案-如果所有材料都準備好供Oracle使用,並且學生根據自己的意願選擇使用其他內容,那麼他們選擇處於不利地位。
是的,但是那傢伙失敗了,將其歸咎於教授,最終造成騷動。當然,他可能是錯的,但是任何官員的抱怨都很可能需要徹底調查,這可能會變得很混亂。易於將其夾在芽中。此外,教授如何標記考試?(“僅功能性”,“黑匣子”等方法可行,但我寧願再次檢查學生的行為)
-1
Jay
2018-11-01 00:55:38 UTC
view on stackexchange narkive permalink

嗯,我不想太粗魯,但這似乎是一個很奇怪的問題。就像在說:“教授堅持要我們從教科書X開始工作。但是我更喜歡使用教科書Y。”也許您可以證明Y是一本更好的教科書。但是,如果班級要連貫一致,那麼所有學生都應該使用同一本教科書。

如果每個人都使用不同的SQL方言,那麼教授將不得不在每個班級中討論所有不同的方言。教授不僅必須了解所有方言和所有差異,而且他還必須花上課時不斷地討論這些差異,而不是專注於基本要點。對於已經非常熟悉SQL的學生,討論不同方言之間的差異可能很有趣並且很有用。但是,如果課堂上的重點是教授SQL,那麼這樣的離題不僅會給教授帶來負擔,還會給學生帶來負擔。學生必須進行整理,他現在在說什麼方言?那對我適用還是我不使用的那個?複雜程度將大大提高。

他將如何給作業評分?他應該在計算機上安裝所有這些不同的方言嗎?並跟踪哪個學生正在使用哪種方言,並確保使用正確的方言進行測試?

如果有人說:“我根本不想使用SQL。我想使用Mongo”該怎麼辦?

如果有人說“我不想學習數據庫。我想學習編寫平面文件”怎麼辦?

如果有人說“我不想”怎麼辦?不想了解數據庫。我想了解法國大革命”?

這將在哪裡結束?

將教科書拖入其中是不明智的。
-1
與語言變體相比,這是一場危在旦夕的鬥爭。由於另一側的重量,您很容易丟掉教科書,但仍然贏了。
Dmitry Savostyanov
2018-10-25 23:50:51 UTC
view on stackexchange narkive permalink

英國大多數大學通過所謂的課程和模塊描述符來傳達有關其課程和模塊的信息。它們通常是您的課程手冊的一部分,或在模塊信息包中提供。

閱讀模塊描述符,然後查看模塊的學習目標。它們描述了成功完成本單元後您將獲得的技能和知識。您的講師會在這裡幫助您掌握這些技能。

  • 如果LO表示您將學習一種語言/語法,那麼這就是您需要學習的內容。可以選擇一種語言,因為它已成為正式文檔(這是您的學習合同的一部分),因此很合理。
  • 如果LO表示您將學習如何管理數據庫,則必須使用任何適當的語言來管理數據庫。如果講師想施加限制,則她/他應使用客觀原因(例如,該課程已過時,不適合該任務,這是專有的,大學沒有此許可證,依此類推。對沒有學業需要的學生強加個人偏好並不酷,僅表明講師技能有限設置並且不願意去了解更多。這不是一個很好的例子。
我認為承認自己的技能有限是一個很好的榜樣。任何不承認自己的局限性的人都不會被信任。
這忽略了評估/分級多語言提交時的開銷(可能的自動測試工具等)。
@MichaelKay承認自己有限的技能很酷,但讓自己成為別人的問題,這是學生的問題,這很酷。講師的任務是幫助學生髮展技能,而不是限制他們。
@DanielR.Collins評分是講師的工作。簡化工作以犧牲學生經驗為代價是不公平的。
@DmitrySavostyanov:我們將不得不不同意。明智地利用時間,以便可以幫助更多的人,這是明智的。
@DanielR.Collins我們當然必須不同意。“高效”為更多人提供更差的支持絕不是我的目標。
根據我的最後評論,我有興趣幫助*更多人*,更深入地*,例如,準備更好的課堂演示,更多的個人會議和建議時間,對任務概念的更深入反饋等。您似乎很奇怪d而是優先安排預算時間以支持學生*不必學習新語言*。
@DanielR.Collins我想專注於幫助學生學習*他們想要*學習的內容以及模塊描述符承諾他們將學習的內容。例如,如果他們來學習數據分析,他們可以選擇一種語言進行作業-語言只是幫助學生學習該學科的工具。限制他們的語言選擇只會減少他們的經驗。而且,如果為了標記目的而必須這樣做,我很高興學習一個新的。如果我不想學習自己,如何鼓勵學生學習?
這不是講師不懂某種語言,而是構造一個單一的測試工具,以幫助自動評分並節省其他時間。請參閱我的第一條評論;現在我們只是在爭論圈子。
@DanielR.Collins因此,您主張自動評分,並將其稱為“更深入的反饋”和“幫助更多的人”嗎?這里肯定有一些圈子。
我沒有說也沒有使用自動評分。你是故意變鈍的。
@DanielR.Collins您說過“幫助自動評分”和“自動測試工具”。我的母語不是英語,如果我誤解了您,我深表歉意,但是您的做法和自動評分之間的主要區別是什麼?
einpoklum
2018-10-27 21:34:19 UTC
view on stackexchange narkive permalink

通常是的,但可能不是故意“推”特定的商業工具

我同意 the multiple answers原則上講-老師可以並且確實選擇瞭如何教授課程,並且在選擇供學生使用的工具以及提交作業的形式和語法方面還有很多迴旋餘地。

話雖如此,如果課程的老師強迫使用一種工具和/或方言,則該工具和/或方言將僅由單個商業實體提供

  • (也許)要求學生在使用此工具上花費財務資源
  • (也許)在大學上需要在使用該工具上花費財務資源
  • 更常用,更自由-可用且備受好評的替代方案
  • ,並且老師拒絕為獨家使用該工具提供(最低可信度)理由
  • ...那麼這可能在道德上有問題的。它實際上是一種強制性的商業廣告形式,如果不是為工具的提供者人為地創造收入,則是教師方面的一種強制性商業廣告,並且可能違反學術機構的規定或可能違反州法律。

    現在,我承認這是一件棘手的事,因為我們正在談論以某種外在的考慮來規範學術自由,所以這將是相當令人震驚的。我懷疑說“使用Oracle SQL變體”是否符合上述條件,因為就您的課程而言,它實際上可能與ISO SQL是同一回事。或可以從其他SQL變體中輕鬆改編;顯然有一個“快速版本”,您可以免費使用。但是,在我上面描述的那種情況下,它不像其他對您問題的回答者所說的那樣乾脆。

    也許。Oracle合法免費提供(“ Express”版);沒有人需要花費財務資源。是否存在“更常用”或“更受人尊敬”的替代方案值得商bat,這肯定取決於您與誰交談。但這當然不是很少使用,也不是有問題的工具。而且在行業中很普遍,學生很有可能會從簡歷中獲得收益。這也不是不道德的廣告之類的情況。
    @AnoE:請參見編輯。
    我對此表示贊同。我只想一次看到班級學生推翻教師的學術自由。我敢肯定這種權力會被嚴重濫用,但是當講師堅持要教授絕大部分過時的技術時,就該走了。
    -1
    @einpoklum:我認為您從來沒有發現自己所學的專業是半途而廢的。
    -1
    我記得,至少在10年前,Oracle就可以自由地用於學習了,遠遠早於大多數係統。
    包括10年前,@Ian: PostgreSQL,MySQL,MonetDB和其他版本始終免費使用,並且自由。
    @einpoklum,如果我沒有記錯的話,其中大多數甚至更讓人痛苦,那麼Oracle可以在Windows上運行。他們當時還很新。
    @Ian: Windows是另一種商業軟件,並且肯定不是免費提供的。另外,此討論偏離了主題...
    我第一次聽說有人稱它為ISO SQL。
    @CaiusJard: SQL實際上只是[ISO / IEC 9075](https://en.wikipedia.org/wiki/SQL)。
    vallismortis
    2018-11-03 18:00:39 UTC
    view on stackexchange narkive permalink

    就其價值而言,使用Oracle和PL / SQL,您不僅會獲得核心的關係數據庫和SQL經驗,而且還將獲得有關商業數據庫及其標準擴展方面的一些動手經驗。這將使您能夠自行選擇幾乎任何其他基於標準的RDBMS系統,並且會立即感到熟悉。在進入就業市場之前,您可能沒有另一個學習商業數據庫的好機會,並且在那裡擁有Oracle PL / SQL將會看起來很棒,並且可能會打開一些通常不會為新畢業生提供的就業機會。

    我將自己的經驗加進來以作對比。在90年代中期,我的面向對象程序設計入門課程的課程使用 Fortran 77 (一種非 -OO語言)進行了講授,因為(終身)教授不懂C ++,這是他退休前的最後一個學期。他使用早期的 Data Structures 課(基於一本無關的教科書)上的筆記(用打孔卡寫)進行講授,而編程實驗室由實際上知道自己在做什麼的研究生使用C ++進行教學(謝謝​​哈米德)。考試是藍皮書(書面論文),要求回答從C ++實驗室作業中提取的面向對象的編程問題……用 Pascal 編寫(一種無語言)班上的學生中有90%被教導過,但被認為已經知道了。每個學生獲得2.5分,教授退休。我每周有兩個小時的實驗任務,是從一名研究生那裡學習面向對象程序設計的,而他的注意力分散在其他15名學生中。

    下個學期的另一個示例(與您的情況更相關)。我的 Database 課完全沒有數據庫。沒有數據庫,沒有SQL。編程實驗室完全使用C語言,涉及的工作包括實現核心數據結構以支持內存中的關係表,基於二進制樹創建不同的索引等,並使用表掃描和索引來編寫查詢,然後使用big來評估其性能。 -O表示法和完善的索引方法。即使我在課堂上表現出色,也沒有提供任何DBMS或查詢語言的實踐經驗。這是最純粹的計算機科學課程。回想起來,這些概念一直困擾著我,並且確實幫助我了解瞭如何調試性能查詢。

    總而言之,在大學級別,您需要明智地選擇自己的戰鬥,我希望這能說服您您目前的課程還不錯。由您自己決定如何從課程中獲得最大的長期價值。

    Andrew Lazarus
    2018-11-01 03:20:20 UTC
    view on stackexchange narkive permalink

    我同意所有其他答案:講師當然可以做到這一點,並且很可能會使用Oracle對您的工作進行評分。

    我寫補充說:我認為您應該除非Oracle對SQL的擴展或偏離,否則應盡量避免,除非將答案大大簡化為簡潔的內容。我想到的具體區別是使用標準的SQL JOIN語法,而不是Oracle的舊的基於WHERE的語法。前者可以表達後者不能接受的關係,後者不能被其他RDBMS接受,而且我不敢相信您的講師會使用Oracle版本,因為它的版本太舊了,因此也沒有採用SQL標準語法。 >



    該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 4.0許可。
    Loading...