亞馬遜放棄go語言 亞馬遜放棄所有prime會(huì)員

亞馬遜賬號(hào)關(guān)聯(lián)怎么申訴

亞馬遜賬號(hào)關(guān)聯(lián)是可以通過申訴來爭取復(fù)活的機(jī)會(huì)的,需要向亞馬遜發(fā)送多封郵件來證明自己的賬號(hào)沒有出現(xiàn)關(guān)聯(lián)問題,在前幾封郵件中,賣家需要提交資料來證明幾個(gè)賬號(hào)之間的不同處,否則亞馬遜會(huì)根據(jù)這些資料相同而判定賬號(hào)關(guān)聯(lián),并且誠懇的提出整改建議,向亞馬遜承諾今后一定會(huì)守規(guī)運(yùn)營。但是如果賣家的多個(gè)賬號(hào)已經(jīng)被亞馬遜判定為賬號(hào)關(guān)聯(lián),那么只能向官方承認(rèn)錯(cuò)誤,并申請(qǐng)多賬號(hào)操作的資格,這種情況下恢復(fù)賬號(hào)已經(jīng)是比較困難的事情,所以建議如果賬號(hào)關(guān)聯(lián)是這種情況的賣家盡早開始進(jìn)行產(chǎn)品轉(zhuǎn)移,以免造成更多的銷售損失。

網(wǎng)站的建設(shè)創(chuàng)新互聯(lián)專注網(wǎng)站定制,經(jīng)驗(yàn)豐富,不做模板,主營網(wǎng)站定制開發(fā).小程序定制開發(fā),H5頁面制作!給你煥然一新的設(shè)計(jì)體驗(yàn)!已為茶樓設(shè)計(jì)等企業(yè)提供專業(yè)服務(wù)。

對(duì)于亞馬遜賬號(hào)關(guān)聯(lián)來說,在發(fā)生之前就進(jìn)行預(yù)防是最有效果的,因此超級(jí)瀏覽器就成為了亞馬遜賣家防關(guān)聯(lián)的最佳選擇,超級(jí)瀏覽器有固定IP和分級(jí)管理的功能,面對(duì)關(guān)聯(lián)的判定因素可以進(jìn)行有效的規(guī)避,保障賣家的賬號(hào)運(yùn)營安全。

駁狗屎文 "我為什么放棄Go語言

此篇文章流傳甚廣, 其實(shí)里面沒啥干貨, 而且里面很多觀點(diǎn)是有問題的. 這個(gè)文章在 golang-china 很早就討論過了.

最近因?yàn)?Rust 1.0 和 1.1 的發(fā)布, 導(dǎo)致這個(gè)文章又出來毒害讀者.

所以寫了這篇反駁文章, 指出其中的問題.

有好幾次,當(dāng)我想起來的時(shí)候,總是會(huì)問自己:我為什么要放棄Go語言?這個(gè)決定是正確的嗎?是明智和理性的嗎?其實(shí)我一直在認(rèn)真思考這個(gè)問題。

開門見山地說,我當(dāng)初放棄Go語言(golang),就是因?yàn)閮蓚€(gè)“不爽”:第一,對(duì)Go語言本身不爽;第二,對(duì)Go語言社區(qū)里的某些人不爽。毫無疑問,這是非常主觀的結(jié)論。但是我有足夠詳實(shí)的客觀的論據(jù),用以支撐這個(gè)看似主觀的結(jié)論。

文末附有本文更新日志。

確實(shí)是非常主觀的結(jié)論, 因?yàn)槔锩嬗胁簧儆袉栴}的觀點(diǎn)(用來忽悠Go小白還行).

第0節(jié):我的Go語言經(jīng)歷

先說說我的經(jīng)歷吧,以避免被無緣無故地當(dāng)作Go語言的低級(jí)黑。

2009年底,Go語言(golang)第一個(gè)公開版本發(fā)布,籠罩著“Google公司制造”的光環(huán),吸引了許多慕名而來的嘗鮮者,我(Liigo)也身居其中,籠統(tǒng)的看了一些Go語言的資料,學(xué)習(xí)了基礎(chǔ)的教程,因?qū)ζ湔Z法中的分號(hào)和花括號(hào)不滿,很快就遺忘掉了,沒拿它當(dāng)一回事。

在2009年Go剛發(fā)布時(shí), 確實(shí)是因?yàn)椤癎oogle公司制造”的光環(huán)而吸引了(包括文章作者和諸多IT記者)很多低級(jí)的嘗鮮者.

還好, 經(jīng)過5年的發(fā)展, 這些純粹因?yàn)楣猸h(huán)來的投機(jī)者所剩已經(jīng)不多了(Google趨勢(shì)).

目前, 真正的Go用戶早就將Go用于實(shí)際的生產(chǎn)了.

說到 其語法中的分號(hào)和花括號(hào)不滿, 我想說這只是你的 個(gè)人主觀感受, 還有很多人對(duì)Go的分號(hào)和花括號(hào)很滿意,

包括水果公司的的 Swift 的語言設(shè)計(jì)者也很滿意這種風(fēng)格(Swift中的分號(hào)和花括號(hào)和Go基本相同).

如果只談 個(gè)人主觀感受, 我也可以說 Rust 的 fn 縮寫也很蛋疼!

兩年之后,2011年底,Go語言發(fā)布1.0的計(jì)劃被提上日程,相關(guān)的報(bào)道又多起來,我再次關(guān)注它,重新評(píng)估之后決定深入?yún)⑴cGo語言。我訂閱了其users、nuts、dev、commits等官方郵件組,堅(jiān)持每天閱讀其中的電子郵件,以及開發(fā)者提交的每一次源代碼更新,給Go提交了許多改進(jìn)意見,甚至包括修改Go語言編譯器源代碼直接參與開發(fā)任務(wù)。如此持續(xù)了數(shù)月時(shí)間。

這個(gè)到是事實(shí), 在 golang-china 有不少吵架的帖子, 感興趣的可以去挖下, 我就不展開說了.

到2012年初,Go 1.0發(fā)布,語言和標(biāo)準(zhǔn)庫都已經(jīng)基本定型,不可能再有大幅改進(jìn),我對(duì)Go語言未能在1.0定型之前更上一個(gè)臺(tái)階、實(shí)現(xiàn)自我突破,甚至帶著諸多明顯缺陷走向1.0,感到非常失望,因而逐漸疏遠(yuǎn)了它(所以Go 1.0之后的事情我很少關(guān)心)。后來看到即將發(fā)布的Go 1.1的Release Note,發(fā)現(xiàn)語言層面沒有太大改變,只是在庫和工具層面有所修補(bǔ)和改進(jìn),感到它尚在幼年就失去成長的動(dòng)力,越發(fā)失望。外加Go語言社區(qū)里的某些人,其中也包括Google公司負(fù)責(zé)開發(fā)Go語言的某些人,其態(tài)度、言行,讓我極度厭惡,促使我決絕地離棄Go語言。

真的不清楚樓主說的可以在 Go1.0 之前短時(shí)間內(nèi)能實(shí)現(xiàn)的 重大改進(jìn)和諸多明顯缺陷 是什么.

如果是樓主說前面的 其語法中的分號(hào)和花括號(hào)不滿 之類的重大改進(jìn), 我只能說這只是你的 個(gè)人主觀感受 而已,

你的很多想法只能說服你自己, 沒辦法說服其他絕大部分人(不要以為像C++或Rust那樣什么特性都有就NB了, 各種NB特性加到一起只能是 要你命3000, 而絕對(duì)不會(huì)是什么 銀彈).

Go 1.1的Release Note,發(fā)現(xiàn)語言層面沒有太大改變. 語言層沒有改變是是因?yàn)?Go1 作出的向后兼容的承諾. 對(duì)于工業(yè)級(jí)的語言來說, Go1 這個(gè)只能是優(yōu)點(diǎn). 如果連語言層在每個(gè)版本都會(huì)出現(xiàn)諸多大幅改進(jìn), 那誰還敢用Go語言來做生產(chǎn)開發(fā)呢(我承認(rèn)Rust的改動(dòng)很大膽, 但也說明了Rust還處于比較幼稚和任性的階段)?

說 Go語言社區(qū)里的某些人固執(zhí) 的觀點(diǎn)我是同意的. 但是這些 固執(zhí) 的人是可以講道理的, 但是他們對(duì)很多東西的要求很高(特別是關(guān)于Go的設(shè)計(jì)哲學(xué)部分).

只要你給的建議有依據(jù)(語言的設(shè)計(jì)哲學(xué)是另外一回事情), 他們絕對(duì)不會(huì)盲目的拒絕(只是討論的周期會(huì)比較長).

關(guān)于樓主提交的給Go文件添加BOM的文章, 需要補(bǔ)充說明下.

在Go1.0發(fā)布的時(shí)候, Go語言的源文件(.go)明確要求必須是UTF8編碼的, 而且是無BOM的UTF8編碼的.

注意: 這個(gè) 無BOM的UTF8編碼 的限制僅僅是 針對(duì) Go語言的源文件(.go).

這個(gè)限制并不是說不允許用戶處理帶BOM的UTF8的txt文件!

我覺得對(duì)于寫Go程序來說, 這個(gè)限制是沒有任何問題的, 到目前為止, 我還從來沒有使用過帶BOM的.go文件.

不僅是因?yàn)閹OM的.go文件沒有太多的意義, 而且有很多的缺陷.

BOM的原意是用來表示編碼是大端還是小端的, 主要用于UTF16和UTF32. 對(duì)于 UTF8 來說, BOM 沒有任何存在的意義(正是Go的2個(gè)作者發(fā)明了UTF8, 徹底解決了全球的編碼問題).

但是, 在現(xiàn)實(shí)中, 因?yàn)镸S的txt記事本, 對(duì)于中文環(huán)境會(huì)將txt(甚至是C/C++源文件)當(dāng)作GBK編碼(GBK是個(gè)爛編碼),

為了區(qū)別到底是GBK還是UTF8, MS的記事本在前面加了BOM這個(gè)垃圾(被GBK占了茅坑), 這里的bom已經(jīng)不是表示字節(jié)序本意了. 不知道有沒有人用ms的記事本寫網(wǎng)頁, 然后生成一個(gè)帶bom的utf8網(wǎng)頁肯定很有意思.

這是MS的記事本的BUG: 它不支持生成無BOM的UTF8編碼的文本文件!

這些是現(xiàn)實(shí)存在的帶BOM的UTF8編碼的文本文件, 但是它們肯定都不是Go語言源文件!

所以說, Go語言的源文件即使強(qiáng)制限制了無BOM的UTF8編碼要求, 也是沒有任何問題的(而且我還希望有這個(gè)限制).

雖然后來Go源文件接受帶BOM的UTF8了, 但是運(yùn)行 go fmt 之后, 還是會(huì)刪除掉BOM的(因?yàn)锽OM就是然并卵). 也就是說 帶 BOM 的 Go 源文件是不符合 Go語言的編碼風(fēng)格的, go fmt 會(huì)強(qiáng)制刪除 BOM 頭.

前面說了BOM是MS帶來的垃圾, 但是BOM的UTF8除了然并卵之外還有很多問題, 因?yàn)锽OM在string的開頭嵌入了垃圾,

導(dǎo)致正則表達(dá)式, string的鏈接運(yùn)算等操作都被會(huì)被BOM這個(gè)垃圾所污染. 對(duì)于.go語言, 即使代碼完全一樣, 有BOM和無BOM會(huì)導(dǎo)致文件的MD5之類的校驗(yàn)碼不同.

所以, 我覺得Go用戶不用糾結(jié)BOM這個(gè)無關(guān)緊要的東西.

在上一個(gè)10年,我(Liigo)在我所屬的公司里,深度參與了兩個(gè)編程語言項(xiàng)目的開發(fā)。我想,對(duì)于如何判斷某個(gè)編程語言的優(yōu)劣,或者說至少對(duì)于如何判斷某個(gè)編程語言是否適合于我自己,我應(yīng)該還是有一點(diǎn)發(fā)言權(quán)的。

第1節(jié):我為什么對(duì)Go語言不爽?

Go語言有很多讓我不爽之處,這里列出我現(xiàn)在還能記起的其中一部分,排名基本上不分先后。讀者們耐心地看完之后,還能淡定地說一句“我不在乎”嗎?

1.1 不允許左花括號(hào)另起一行

關(guān)于對(duì)花括號(hào)的擺放,在C語言、C++、Java、C#等社區(qū)中,十余年來存在持續(xù)爭議,從未形成一致意見。在我看來,這本來就是主觀傾向很重的抉擇,不違反原則不涉及是非的情況下,不應(yīng)該搞一刀切,讓程序員或團(tuán)隊(duì)自己選擇就足夠了。編程語言本身強(qiáng)行限制,把自己的喜好強(qiáng)加給別人,得不償失。無論傾向于其中任意一種,必然得罪與其對(duì)立的一群人。雖然我現(xiàn)在已經(jīng)習(xí)慣了把左花括號(hào)放在行尾,但一想到被禁止其他選擇,就感到十分不爽。Go語言這這個(gè)問題上,沒有做到“團(tuán)結(jié)一切可以團(tuán)結(jié)的力量”不說,還有意給自己樹敵,太失敗了。

我覺得Go最偉大的發(fā)明是 go fmt, 從此Go用戶不會(huì)再有花括弧的位置這種無聊爭論了(當(dāng)然也少了不少灌水和上tiobe排名的機(jī)會(huì)).

是這優(yōu)點(diǎn), Swift 語言也使用和 Go 類似的風(fēng)格(當(dāng)然樓主也可能鄙視swift的作者).

1.2 編譯器莫名其妙地給行尾加上分號(hào)

對(duì)Go語言本身而言,行尾的分號(hào)是可以省略的。但是在其編譯器(gc)的實(shí)現(xiàn)中,為了方便編譯器開發(fā)者,卻在詞法分析階段強(qiáng)行添加了行尾的分號(hào),反過來又影響到語言規(guī)范,對(duì)“怎樣添加分號(hào)”做出特殊規(guī)定。這種變態(tài)做法前無古人。在左花括號(hào)被意外放到下一行行首的情況下,它自動(dòng)在上一行行尾添加的分號(hào),會(huì)導(dǎo)致莫名其妙的編譯錯(cuò)誤(Go 1.0之前),連它自己都解釋不明白。如果實(shí)在處理不好分號(hào),干脆不要省略分號(hào)得了;或者,Scala和JavaScript的編譯器是開源的,跟它們學(xué)學(xué)怎么處理省略行尾分號(hào)可以嗎?

又是樓主的 個(gè)人主觀感受, 不過我很喜歡這個(gè)特性. Swift 語言也是類似.

1.3 極度強(qiáng)調(diào)編譯速度,不惜放棄本應(yīng)提供的功能

程序員是人不是神,編碼過程中免不了因?yàn)榇笠饣蚴韬龇敢恍╁e(cuò)。其中有一些,是大家集體性的很容易就中招的錯(cuò)誤(Go語言里的例子我暫時(shí)想不起來,C++里的例子有“基類析構(gòu)函數(shù)不是虛函數(shù)”)。這時(shí)候編譯器應(yīng)該站出來,多做一些檢查、約束、核對(duì)性工作,盡量阻止常規(guī)錯(cuò)誤的發(fā)生,盡量不讓有潛在錯(cuò)誤的代碼編譯通過,必要時(shí)給出一些警告或提示,讓程序員留意。編譯器不就是機(jī)器么,不就是應(yīng)該多做臟活累活雜活、減少人的心智負(fù)擔(dān)么?編譯器多做一項(xiàng)檢查,可能會(huì)避免數(shù)十萬程序員今后多年內(nèi)無數(shù)次犯同樣的錯(cuò)誤,節(jié)省的時(shí)間不計(jì)其數(shù),這是功德無量的好事。但是Go編譯器的作者們可不這么想,他們不愿意自己多花幾個(gè)小時(shí)給編譯器增加新功能,覺得那是虧本,反而減慢了編譯速度。他們以影響編譯速度為由,拒絕了很多對(duì)編譯器改進(jìn)的要求。典型的因噎廢食。強(qiáng)調(diào)編譯速度固然值得贊賞,但如果因此放棄應(yīng)有的功能,我不贊成。

編譯速度是很重要的, 如果編譯速度夠慢, 語言再好也不會(huì)有人使用的.

比如C/C++的增量編譯/預(yù)編譯頭文件/并發(fā)編譯都是為了提高編譯速度.

Rust1.1 也號(hào)稱 比 1.0 的編譯時(shí)間減少了32% (注意: 不是運(yùn)行速度).

當(dāng)然, Go剛面世的時(shí)候, 編譯速度是其中的一個(gè)設(shè)計(jì)目標(biāo).

不過我想樓主, 可能想說的是因?yàn)榫幾g器自己添加分號(hào)而導(dǎo)致的編譯錯(cuò)誤的問題.

我覺得Go中 { 不能另起一行是語言特性, 如果修復(fù)這個(gè)就是引入了新的錯(cuò)誤.

其他的我真想不起來還有哪些 調(diào)編譯速度,不惜放棄本應(yīng)提供的功能 (不要提泛型, 那是因?yàn)檫€沒有好的設(shè)計(jì)).

1.4 錯(cuò)誤處理機(jī)制太原始

在Go語言中處理錯(cuò)誤的基本模式是:函數(shù)通常返回多個(gè)值,其中最后一個(gè)值是error類型,用于表示錯(cuò)誤類型極其描述;調(diào)用者每次調(diào)用完一個(gè)函數(shù),都需要檢查這個(gè)error并進(jìn)行相應(yīng)的錯(cuò)誤處理:if err != nil { /*這種代碼寫多了不想吐么*/ }。此模式跟C語言那種很原始的錯(cuò)誤處理相比如出一轍,并無實(shí)質(zhì)性改進(jìn)。實(shí)際應(yīng)用中很容易形成多層嵌套的if else語句,可以想一想這個(gè)編碼場(chǎng)景:先判斷文件是否存在,如果存在則打開文件,如果打開成功則讀取文件,如果讀取成功再寫入一段數(shù)據(jù),最后關(guān)閉文件,別忘了還要處理每一步驟中出現(xiàn)錯(cuò)誤的情況,這代碼寫出來得有多變態(tài)、多丑陋?實(shí)踐中普遍的做法是,判斷操作出錯(cuò)后提前return,以避免多層花括號(hào)嵌套,但這么做的后果是,許多錯(cuò)誤處理代碼被放在前面突出的位置,常規(guī)的處理邏輯反而被掩埋到后面去了,代碼可讀性極差。而且,error對(duì)象的標(biāo)準(zhǔn)接口只能返回一個(gè)錯(cuò)誤文本,有時(shí)候調(diào)用者為了區(qū)分不同的錯(cuò)誤類型,甚至需要解析該文本。除此之外,你只能手工強(qiáng)制轉(zhuǎn)換error類型到特定子類型(靜態(tài)類型的優(yōu)勢(shì)沒了)。至于panic - recover機(jī)制,致命的缺陷是不能跨越庫的邊界使用,注定是一個(gè)半成品,最多只能在自己的pkg里面玩一玩。Java的異常處理雖然也有自身的問題(比如Checked Exceptions),但總體上還是比Go的錯(cuò)誤處理高明很多。

話說, 軟件開發(fā)都發(fā)展了半個(gè)世紀(jì), 還是無實(shí)質(zhì)性改進(jìn). 不要以為弄一個(gè)異常的語法糖就是革命了.

我只能說錯(cuò)誤和異常是2個(gè)不同的東西, 將所有錯(cuò)誤當(dāng)作異常那是SB行為.

正因?yàn)橛挟惓_@個(gè)所謂的銀彈, 導(dǎo)致很多等著別人幫忙擦屁股的行為(注意 shit 函數(shù)拋出的絕對(duì)不會(huì)是一種類型的 shit, 而被其間接調(diào)用的各種 xxx_shit 也可能拋出各種類型的異常, 這就導(dǎo)致 catch 失控了):

int main() {

try {

shit();

} catch( /* 到底有幾千種 shit ? */) {

...

}

}

Go的建議是 panic - recover 不跨越邊界, 也就是要求正常的錯(cuò)誤要由pkg的處理掉.

這是負(fù)責(zé)任的行為.

再說Go是面向并發(fā)的編程語言, 在海量的 goroutine 中使用 try/catch 是不是有一種不倫不類的感覺呢?

1.5 垃圾回收器(GC)不完善、有重大缺陷

在Go 1.0前夕,其垃圾回收器在32位環(huán)境下有內(nèi)存泄漏,一直拖著不肯改進(jìn),這且不說。Go語言垃圾回收器真正致命的缺陷是,會(huì)導(dǎo)致整個(gè)進(jìn)程不可預(yù)知的間歇性停頓。像某些大型后臺(tái)服務(wù)程序,如游戲服務(wù)器、APP容器等,由于占用內(nèi)存巨大,其內(nèi)存對(duì)象數(shù)量極多,GC完成一次回收周期,可能需要數(shù)秒甚至更長時(shí)間,這段時(shí)間內(nèi),整個(gè)服務(wù)進(jìn)程是阻塞的、停頓的,在外界看來就是服務(wù)中斷、無響應(yīng),再牛逼的并發(fā)機(jī)制到了這里統(tǒng)統(tǒng)失效。垃圾回收器定期啟動(dòng),每次啟動(dòng)就導(dǎo)致短暫的服務(wù)中斷,這樣下去,還有人敢用嗎?這可是后臺(tái)服務(wù)器進(jìn)程,是Go語言的重點(diǎn)應(yīng)用領(lǐng)域。以上現(xiàn)象可不是我假設(shè)出來的,而是事實(shí)存在的現(xiàn)實(shí)問題,受其嚴(yán)重困擾的也不是一家兩家了(2013年底ECUG Con 2013,京東的劉奇提到了Go語言的GC、defer、標(biāo)準(zhǔn)庫實(shí)現(xiàn)是性能殺手,最大的痛苦是GC;美團(tuán)的沈鋒也提到Go語言的GC導(dǎo)致后臺(tái)服務(wù)間隔性停頓是最大的問題。更早的網(wǎng)絡(luò)游戲仙俠道開發(fā)團(tuán)隊(duì)也曾受Go垃圾回收的沉重打擊)。在實(shí)踐中,你必須努力減少進(jìn)程中的對(duì)象數(shù)量,以便把GC導(dǎo)致的間歇性停頓控制在可接受范圍內(nèi)。除此之外你別無選擇(難道你還想自己更換GC算法、甚至砍掉GC?那還是Go語言嗎?)。跳出圈外,我近期一直在思考,一定需要垃圾回收器嗎?沒有垃圾回收器就一定是歷史的倒退嗎?(可能會(huì)新寫一篇博客文章專題探討。)

這是說的是32位系統(tǒng), 這絕對(duì)不是Go語言的重點(diǎn)應(yīng)用領(lǐng)域!! 我可以說Go出生就是面向64位系統(tǒng)和多核心CPU環(huán)境設(shè)計(jì)的. (再說 Rust 目前好像還不支持 XP 吧, 這可不可以算是影響巨大?)

32位當(dāng)時(shí)是有問題, 但是對(duì)實(shí)際生產(chǎn)影響并不大(請(qǐng)問樓主還是在用32位系統(tǒng)嗎, 還只安裝4GB的內(nèi)存嗎). 如果是8位單片機(jī)環(huán)境, 建議就不要用Go語言了, 直接C語言好了.

而且這個(gè)問題早就不存在了(大家可以去看Go的發(fā)布日志).

Go的出生也就5年時(shí)間, GC的完善和改進(jìn)是一個(gè)持續(xù)的工作, 2015年8月將發(fā)布的 Go1.5將采用并行GC.

關(guān)于GC的被人詬病的地方是會(huì)導(dǎo)致卡頓, 但是我以為這個(gè)主要是因?yàn)镚C的實(shí)現(xiàn)還不夠完美而導(dǎo)致的.

如果是完美的并發(fā)和增量的GC, 那應(yīng)該不會(huì)出現(xiàn)大的卡頓問題的.

當(dāng)然, 如果非要實(shí)時(shí)性, 那用C好了(實(shí)時(shí)并不表示性能高, 只是響應(yīng)時(shí)間可控).

對(duì)于Rust之類沒有GC的語言來說, 想很方便的開發(fā)并發(fā)的后臺(tái)程序那幾乎是不可能的.

不要總是吹Rust能代替底層/中層/上層的開發(fā), 我們要看有誰用Rust真的做了什么.

1.6 禁止未使用變量和多余import

Go編譯器不允許存在被未被使用的變量和多余的import,如果存在,必然導(dǎo)致編譯錯(cuò)誤。但是現(xiàn)實(shí)情況是,在代碼編寫、重構(gòu)、調(diào)試過程中,例如,臨時(shí)性的注釋掉一行代碼,很容易就會(huì)導(dǎo)致同時(shí)出現(xiàn)未使用的變量和多余的import,直接編譯錯(cuò)誤了,你必須相應(yīng)的把變量定義注釋掉,再翻頁回到文件首部把多余的import也注釋掉,……等事情辦完了,想把剛才注釋的代碼找回來,又要好幾個(gè)麻煩的步驟。還有一個(gè)讓人蛋疼的問題,編寫數(shù)據(jù)庫相關(guān)的代碼時(shí),如果你import某數(shù)據(jù)庫驅(qū)動(dòng)的pkg,它編譯給你報(bào)錯(cuò),說不需要import這個(gè)未被使用的pkg;但如果你聽信編譯器的話刪掉該import,編譯是通過了,運(yùn)行時(shí)必然報(bào)錯(cuò),說找不到數(shù)據(jù)庫驅(qū)動(dòng);你看看程序員被折騰的兩邊不是人,最后不得不請(qǐng)出大神:import _。對(duì)待這種問題,一個(gè)比較好的解決方案是,視其為編譯警告而非編譯錯(cuò)誤。但是Go語言開發(fā)者很固執(zhí),不容許這種折中方案。

這個(gè)問題我只能說樓主的吐槽真的是沒水平.

為何不使用的是錯(cuò)誤而不是警告? 這是為了將低級(jí)的bug消滅在編譯階段(大家可以想下C/C++的那么多警告有什么卵用).

而且, import 即使沒有使用的話, 也是用副作用的, 因?yàn)?import 會(huì)導(dǎo)致 init 和全局變量的初始化.

如果某些代碼沒有使用, 為何要執(zhí)行 init 這些初始化呢?

如果是因?yàn)檎{(diào)試而添加的變量, 那么調(diào)試完刪除不是很正常的要求嗎?

如果是因?yàn)檎{(diào)試而要導(dǎo)入fmt或log之類的包, 刪除調(diào)試代碼后又導(dǎo)致 import 錯(cuò)誤的花,

樓主難道不知道在一個(gè)獨(dú)立的文件包裝下類似的輔助調(diào)試的函數(shù)嗎?

import (

"fmt"

"log"

)

func logf(format string, a ...interface{}) {

file, line := callerFileLine()

fmt.Fprintf(os.Stderr, "%s:%d: ", file, line)

fmt.Fprintf(os.Stderr, format, a...)

}

func fatalf(format string, a ...interface{}) {

file, line := callerFileLine()

fmt.Fprintf(os.Stderr, "%s:%d: ", file, line)

fmt.Fprintf(os.Stderr, format, a...)

os.Exit(1)

}

import _ 是有明確行為的用法, 就是為了執(zhí)行包中的 init 等函數(shù)(可以做某些注冊(cè)操作).

將警告當(dāng)作錯(cuò)誤是Go的一個(gè)哲學(xué), 當(dāng)然在樓主看來這是白癡做法.

1.7 創(chuàng)建對(duì)象的方式太多令人糾結(jié)

創(chuàng)建對(duì)象的方式,調(diào)用new函數(shù)、調(diào)用make函數(shù)、調(diào)用New方法、使用花括號(hào)語法直接初始化結(jié)構(gòu)體,你選哪一種?不好選擇,因?yàn)闆]有一個(gè)固定的模式。從實(shí)踐中看,如果要?jiǎng)?chuàng)建一個(gè)語言內(nèi)置類型(如channel、map)的對(duì)象,通常用make函數(shù)創(chuàng)建;如果要?jiǎng)?chuàng)建標(biāo)準(zhǔn)庫或第三方庫定義的類型的對(duì)象,首先要去文檔里找一下有沒有New方法,如果有就最好調(diào)用New方法創(chuàng)建對(duì)象,如果沒有New方法,則退而求其次,用初始化結(jié)構(gòu)體的方式創(chuàng)建其對(duì)象。這個(gè)過程頗為周折,不像C++、Java、C#那樣直接new就行了。

C++的new是狗屎. new導(dǎo)致的問題是構(gòu)造函數(shù)和普通函數(shù)的行為不一致, 這個(gè)補(bǔ)丁特性真的沒啥優(yōu)越的.

我還是喜歡C語言的 fopen 和 malloc 之類構(gòu)造函數(shù), 構(gòu)造函數(shù)就是普通函數(shù), Go語言中也是這樣.

C++中, 除了構(gòu)造不兼容普通函數(shù), 析構(gòu)函數(shù)也是不兼容普通函數(shù). 這個(gè)而引入的坑有很多吧.

1.8 對(duì)象沒有構(gòu)造函數(shù)和析構(gòu)函數(shù)

沒有構(gòu)造函數(shù)還好說,畢竟還有自定義的New方法,大致也算是構(gòu)造函數(shù)了。沒有析構(gòu)函數(shù)就比較難受了,沒法實(shí)現(xiàn)RAII。額外的人工處理資源清理工作,無疑加重了程序員的心智負(fù)擔(dān)。沒人性啊,還嫌我們程序員加班還少嗎?C++里有析構(gòu)函數(shù),Java里雖然沒有析構(gòu)函數(shù)但是有人家finally語句啊,Go呢,什么都沒有。沒錯(cuò),你有個(gè)defer,可是那個(gè)defer問題更大,詳見下文吧。

defer 可以覆蓋析構(gòu)函數(shù)的行為, 當(dāng)然 defer 還有其他的任務(wù). Swift2.0 也引入了一個(gè)簡化版的 defer 特性.

1.9 defer語句的語義設(shè)定不甚合理

Go語言設(shè)計(jì)defer語句的出發(fā)點(diǎn)是好的,把釋放資源的“代碼”放在靠近創(chuàng)建資源的地方,但把釋放資源的“動(dòng)作”推遲(defer)到函數(shù)返回前執(zhí)行。遺憾的是其執(zhí)行時(shí)機(jī)的設(shè)置似乎有些不甚合理。設(shè)想有一個(gè)需要長期運(yùn)行的函數(shù),其中有無限循環(huán)語句,在循環(huán)體內(nèi)不斷的創(chuàng)建資源(或分配內(nèi)存),并用defer語句確保釋放。由于函數(shù)一直運(yùn)行沒有返回,所有defer語句都得不到執(zhí)行,循環(huán)過程中創(chuàng)建的大量短暫性資源一直積累著,得不到回收。而且,系統(tǒng)為了存儲(chǔ)defer列表還要額外占用資源,也是持續(xù)增加的。這樣下去,過不了多久,整個(gè)系統(tǒng)就要因?yàn)橘Y源耗盡而崩潰。像這類長期運(yùn)行的函數(shù),http.ListenAndServe()就是典型的例子。在Go語言重點(diǎn)應(yīng)用領(lǐng)域,可以說幾乎每一個(gè)后臺(tái)服務(wù)程序都必然有這么一類函數(shù),往往還都是程序的核心部分。如果程序員不小心在這些函數(shù)中使用了defer語句,可以說后患無窮。如果語言設(shè)計(jì)者把defer的語義設(shè)定為在所屬代碼塊結(jié)束時(shí)(而非函數(shù)返回時(shí))執(zhí)行,是不是更好一點(diǎn)呢?可是Go 1.0早已發(fā)布定型,為了保持向后兼容性,已經(jīng)不可能改變了。小心使用defer語句!一不小心就中招。

前面說到 defer 還有其他的任務(wù), 也就是 defer 中執(zhí)行的 recover 可以捕獲 panic 拋出的異常.

還有 defer 可以在 return 之后修改命名的返回值.

上面2個(gè)工作要求 defer 只能在函數(shù)退出時(shí)來執(zhí)行.

樓主說的 defer 是類似 Swift2.0 中 defer 的行為, 但是 Swift2.0 中 defer 是沒有前面2個(gè)特性的.

Go中的defer是以函數(shù)作用域作為觸發(fā)的條件的, 是會(huì)導(dǎo)致樓主說的在 for 中執(zhí)行的錯(cuò)誤用法(哪個(gè)語言沒有坑呢?).

不過 for 中 局部 defer 也是有辦法的 (Go中的defer是以函數(shù)作用域):

for {

func(){

f, err := os.Open(...)

defer f.Close()

}()

}

在 for 中做一個(gè)閉包函數(shù)就可以了. 自己不會(huì)用不要怪別人沒告訴你.

1.10 許多語言內(nèi)置設(shè)施不支持用戶定義的類型

for in、make、range、channel、map等都僅支持語言內(nèi)置類型,不支持用戶定義的類型(?)。用戶定義的類型沒法支持for in循環(huán),用戶不能編寫像make、range那樣“參數(shù)類型和個(gè)數(shù)”甚至“返回值類型和個(gè)數(shù)”都可變的函數(shù),不能編寫像channel、map那樣類似泛型的數(shù)據(jù)類型。語言內(nèi)置的那些東西,處處充斥著斧鑿的痕跡。這體現(xiàn)了語言設(shè)計(jì)的局限性、封閉性、不完善,可擴(kuò)展性差,像是新手作品——且不論其設(shè)計(jì)者和實(shí)現(xiàn)者如何權(quán)威。延伸閱讀:Go語言是30年前的陳舊設(shè)計(jì)思想,用戶定義的東西幾乎都是二等公民(Tikhon Jelvis)。

說到底, 這個(gè)是因?yàn)閷?duì)泛型支持的不完備導(dǎo)致的.

Go語言是沒啥NB的特性, 但是Go的特性和工具組合在一起就是好用.

這就是Go語言NB的地方.

1.11 沒有泛型支持,常見數(shù)據(jù)類型接口丑陋

沒有泛型的話,List、Set、Tree這些常見的基礎(chǔ)性數(shù)據(jù)類型的接口就只能很丑陋:放進(jìn)去的對(duì)象是一個(gè)具體的類型,取出來之后成了無類型的interface{}(可以視為所有類型的基礎(chǔ)類型),還得強(qiáng)制類型轉(zhuǎn)換之后才能繼續(xù)使用,令人無語。Go語言缺少min、max這類函數(shù),求數(shù)值絕對(duì)值的函數(shù)abs只接收/返回雙精度小數(shù)類型,排序接口只能借助sort.Interface無奈的回避了被比較對(duì)象的類型,等等等等,都是沒有泛型導(dǎo)致的結(jié)果。沒有泛型,接口很難優(yōu)雅起來。Go開發(fā)者沒有明確拒絕泛型,只是說還沒有找到很好的方法實(shí)現(xiàn)泛型(能不能學(xué)學(xué)已經(jīng)開源的語言呀)?,F(xiàn)實(shí)是,Go 1.0已經(jīng)定型,泛型還沒有,那些丑陋的接口為了保持向后兼容必須長期存在著。

Go有自己的哲學(xué), 如果能有和目前哲學(xué)不沖突的泛型實(shí)現(xiàn), 他們是不會(huì)反對(duì)的.

如果只是簡單學(xué)學(xué)(或者叫抄襲)已經(jīng)開源的語言的語法, 那是C++的設(shè)計(jì)風(fēng)格(或者說C++從來都是這樣設(shè)計(jì)的, 有什么特性就抄什么), 導(dǎo)致了各種腦裂的編程風(fēng)格.

編譯時(shí)泛型和運(yùn)行時(shí)泛型可能是無法完全兼容的, 看這個(gè)例子:

type AdderT interface {

Add(a, b T) T

}

我為什么放棄Go語言

有好幾次,當(dāng)我想起來的時(shí)候,總是會(huì)問自己:我為什么要放棄Go語言?這個(gè)決定是正確的嗎?是明智和理性的嗎?其實(shí)我一直在認(rèn)真思考這個(gè)問題。

開門見山地說,我當(dāng)初放棄Go語言(golang),就是因?yàn)閮蓚€(gè)“不爽”:第一,對(duì)Go語言本身不爽;第二,對(duì)Go語言社區(qū)里的某些人不爽。毫無疑問,這是非常主觀的結(jié)論。轉(zhuǎn)載

1.1 不允許左花括號(hào)另起一行

1.2 編譯器莫名其妙地給行尾加上分號(hào)

1.3 極度強(qiáng)調(diào)編譯速度,不惜放棄本應(yīng)提供的功能

1.4 錯(cuò)誤處理機(jī)制太原始

1.5 垃圾回收器(GC)不完善、有重大缺陷

1.6 禁止未使用變量和多余import

1.7 創(chuàng)建對(duì)象的方式太多令人糾結(jié)

1.8 對(duì)象沒有構(gòu)造函數(shù)和析構(gòu)函數(shù)

1.9 defer語句的語義設(shè)定不甚合理

1.10 許多語言內(nèi)置設(shè)施不支持用戶定義的類型

1.11 沒有泛型支持,常見數(shù)據(jù)類型接口丑陋

1.12 實(shí)現(xiàn)接口不需要明確聲明

1.13 省掉小括號(hào)卻省不掉花括號(hào)

1.14 編譯生成的可執(zhí)行文件尺寸非常大

1.15 不支持動(dòng)態(tài)加載類庫

假冒商品不帶測(cè)試購買商品頁面無商標(biāo)

1、

2、亞馬遜店鋪遇上產(chǎn)品真實(shí)性審查被封要如何解決?

亞馬遜之所以買家多,賣家少的一個(gè)原因就是門檻高、平臺(tái)制度嚴(yán)、規(guī)則多、以及懲罰嚴(yán)重;稍不注意就容易被封店。尤其是隨著旺季來臨,各種店鋪問題層出不窮,一不留心就容易觸發(fā)店鋪審核。所以了解日常哪些操作會(huì)導(dǎo)致店鋪被封、賬號(hào)被暫停很有必要。和大家總結(jié)以下幾點(diǎn)亞馬遜常見的封店問題,以及解決方法。亞馬遜店鋪被封后,應(yīng)該如何申訴?

一、產(chǎn)品質(zhì)量問題原因

亞馬遜是很注重買家體驗(yàn)的平臺(tái),銷售過程中哪怕是一些非人為、不可預(yù)知的因素,導(dǎo)致產(chǎn)品陳舊或者破損而影響買家體驗(yàn)的,賣家也會(huì)收到A-Z和差評(píng)。賣家若不遵守平臺(tái)條例,很容易收到買家投訴,每月只要有2~3個(gè)投訴,店鋪就可能會(huì)被封。此外,售后服務(wù)態(tài)度和結(jié)果也是亞馬遜考核的標(biāo)準(zhǔn)。

二、產(chǎn)品侵權(quán)問題

侵權(quán)這個(gè)范圍比較廣,有可能是你的商品外觀侵權(quán),可能是你商標(biāo)侵權(quán),或者是你侵犯了別人的知識(shí)產(chǎn)權(quán),甚至可能是你的關(guān)鍵詞侵權(quán)等等。如果賣家店鋪被投訴侵權(quán),并且查證之后確認(rèn)無誤,那么這個(gè)店鋪?zhàn)钶p也是下架商品,最重就是查封店鋪。

三、產(chǎn)品描述問題導(dǎo)致店鋪被封

賣家過于夸大自己商品的效用,但是客戶到手用之后發(fā)現(xiàn)根本不是那么回事,所以客戶就投訴差評(píng),最終被確認(rèn)封店。打個(gè)比方買家在亞馬遜平臺(tái)下單時(shí),收到的產(chǎn)品跟他們訂購的產(chǎn)品有出入,差別較大時(shí),買家很可能發(fā)起投訴,次數(shù)多了賣家就會(huì)受到亞馬遜的警告或店鋪被封。

四、店鋪關(guān)聯(lián)問題

亞馬遜最簡單的規(guī)則之一,就是禁止賣家在同一個(gè)地點(diǎn)擁有兩個(gè)賬號(hào)。同一個(gè)身份在同一個(gè)站點(diǎn)范圍內(nèi)不允許有多家店鋪,如果被亞馬遜檢測(cè)到,全部店鋪都得被封,這個(gè)需要注意,多個(gè)店鋪一定要使用云端服務(wù)器單獨(dú)注冊(cè)和登錄。

五、銷售違禁物品

建議賣家朋友們?cè)陂_店之前上架商品的時(shí)候都要熟讀亞馬遜平臺(tái)禁止銷售的產(chǎn)品,確認(rèn)我們的每一件商品都是可以上架銷售。比如說亞馬遜明文規(guī)定不允許上架的醫(yī)療器械、嬰兒玩具、平衡車等這些,如果你上架了,抓到直接就是永久封店。

六、亞馬遜績效指標(biāo)差導(dǎo)致的封店

績效指標(biāo)是針對(duì)第三方賣家設(shè)置的行為準(zhǔn)則,亞馬遜用績效指標(biāo)來區(qū)分賣家的優(yōu)良中差,訂單缺陷率、訂單取消率和延遲裝運(yùn)率,是導(dǎo)致賬號(hào)被封的主要原因。

訂單缺陷率(ODR)是亞馬遜關(guān)閉賣家店鋪的主要參考標(biāo)準(zhǔn)。ODR如果超過1%,就被認(rèn)為太高了。但如果店鋪被封,那ODR可能是超過1.19%。

訂單取消率和延遲裝運(yùn)率:

訂單取消率和延遲裝運(yùn)率導(dǎo)致關(guān)閉店鋪,表明賣家在產(chǎn)品庫存和配送流程方面存在問題。訂單取消率是指賣家主動(dòng)取消訂單,而不是買家取消。延遲裝運(yùn)率,是指延遲發(fā)貨,或發(fā)貨后忘記通知買家并提供運(yùn)單號(hào)。

七、銷售假貨導(dǎo)致的店鋪被封

任何在亞馬遜平臺(tái)上出售的商品都必須是正品,禁止銷售未經(jīng)授權(quán)的復(fù)制品、盜版、假冒商品;如果被人投訴在亞馬遜平臺(tái)銷售假貨的話,那么賣家的賬號(hào)很容易被亞馬遜叫停,資金也將會(huì)被凍結(jié)。

注:旺季之前,不要隨意更改店鋪信息

每年的下半年,都是注冊(cè)亞馬遜店鋪?zhàn)顬槔щy的幾個(gè)月,不但自注冊(cè)幾乎無法通過,就連通過注冊(cè)的店鋪,也很容易觸發(fā)審核。很多賣家隨便更改自己的店鋪信息,然后發(fā)現(xiàn)自己的店鋪無法登陸,信息變更導(dǎo)致亞馬遜系統(tǒng)自動(dòng)對(duì)賣家賬戶產(chǎn)生了審核。這些信息包括但不限于信用卡信息、收款賬號(hào)信息、店鋪品牌信息等。如有需要更改的信息,建議推遲到旺季結(jié)束之后再操作。

3、被亞馬遜賣家投訴賣假貨,怎樣申訴

亞馬遜申訴要點(diǎn):

1、查找賬戶被凍結(jié)的真正原因

先搞清楚被封店鋪的原因,是因?yàn)橘~號(hào)表現(xiàn)問題還是違反亞馬遜的政策問題。一般情況下,亞馬遜會(huì)在郵件中提示賬戶被封的原因,但也不會(huì)將問題講得太透徹,需要小伙伴們自己開腦洞去悟解一下。而賣家運(yùn)營自家的店鋪,應(yīng)該很容易明白亞馬遜所說的是什么回事。賣家可以查看自己店鋪的績效指標(biāo)數(shù)據(jù),或者是查看一二星Feedback記錄或者是以往糾紛索賠事件等等,總之,要找到自己店鋪被封的真正原因。并且要認(rèn)真分析這些原因。

同時(shí),亞馬遜會(huì)在郵件中引導(dǎo)賣家進(jìn)行申訴來恢復(fù)自己店鋪銷售權(quán)。

申訴的機(jī)會(huì)一般只有一次,通過申訴,賣家還是有可能要得回賬戶的。所以,賣家要認(rèn)真地做好申訴的準(zhǔn)備。

2、擬寫申訴內(nèi)容

在進(jìn)行正式申訴之前,建議賣家可以先擬好申訴的內(nèi)容。關(guān)于申訴信中要涉及到的內(nèi)容,小編也做了以下整理:

1)認(rèn)錯(cuò)的態(tài)度非常重要,賣家在使用書面的語言表達(dá)時(shí),不要帶有個(gè)人的抵抗情緒。

2)找到賬戶被封的直接原因,并對(duì)原因進(jìn)行分析,詳剖導(dǎo)致客戶不滿的因素,虛心承認(rèn)自己的錯(cuò)誤與不足。同時(shí)也不扯與封店無關(guān)的問題。

3)如果賣家在郵件中分析帳號(hào)被封的原因,盡可能提供細(xì)節(jié)和準(zhǔn)確的數(shù)據(jù)。

4)賣家要制定一個(gè)有效的改進(jìn)方案,確保以后不會(huì)出現(xiàn)類似的事情。這個(gè)方案要盡可能的詳細(xì),也要有針對(duì)性和可操作性,不要隨意套用模板。要讓亞馬遜覺得你很真誠的,相信你會(huì)有改變店鋪經(jīng)營的決心,會(huì)繼續(xù)為買家提供優(yōu)質(zhì)的服務(wù),遵守平臺(tái)政策,而不是敷衍了事。

5)賣家也要提到對(duì)帳戶解凍的期盼,并且寫出相應(yīng)的店鋪發(fā)展計(jì)劃。

賣家在擬定申訴內(nèi)容時(shí),最好是分點(diǎn)羅列申訴內(nèi)容,這樣表達(dá)會(huì)比較清晰。擬好申訴后先不用急著提交申訴郵件,應(yīng)該叫上英文比較厲害的小伙伴們,一起看看行文是否存在語法錯(cuò)誤,語言表達(dá)是否夠準(zhǔn)確, 內(nèi)容是否夠詳細(xì)。確認(rèn)沒問題后,再進(jìn)行下一步的申訴。

3、申訴的途徑

1)賣家可登錄賣家后臺(tái),點(diǎn)擊績效提醒Performance Notifications,找到亞馬遜通知賬戶被封的那封郵件,點(diǎn)擊“Appeal decision”申訴按鈕,將準(zhǔn)備好的申訴內(nèi)容寫入,寫好入再提交郵件。

2)如果賣家不能登錄到賣家中心,可以用注冊(cè)的郵箱發(fā)送申訴內(nèi)容到亞馬遜的seller-performance@amazon點(diǎn)抗 郵箱進(jìn)行申訴。

4、關(guān)注Email回復(fù)和后臺(tái)通知(Notification)

賣家發(fā)出申訴內(nèi)容后,亞馬遜一般會(huì)在2個(gè)工作日內(nèi)回復(fù)。但因?yàn)榇嬖跁r(shí)差,中國比美國快12小時(shí),所以賣家就耐心等待吧,但也不要干等著,除了密切關(guān)注注冊(cè)郵箱,也要按照自己寫在申訴信上的改進(jìn)方案,盡力去改善一些存在的問題。

如果亞馬遜超過了2個(gè)工作日還沒有回復(fù),賣家可以再次發(fā)送郵件,詢問亞馬遜是否收到自己之前發(fā)的申訴。如果亞馬遜回復(fù)說你的方案不夠完整,那么就再進(jìn)行補(bǔ)充。一般情況下,如果情況不是特別嚴(yán)重(三番五次的侵權(quán)行為)的,亞馬遜是不會(huì)太過刁難的,會(huì)在收到賣家的申訴郵件后,恢復(fù)賣家的銷售權(quán)限。但是,如果亞馬遜明確回復(fù)賣家拒絕恢復(fù)帳戶的,那很抱歉,賣家賬戶就徹底go die了。

4、亞馬遜上的產(chǎn)品被投訴侵權(quán)怎么辦

目前各大平臺(tái)侵權(quán)后主要遇到兩種情況,平臺(tái)投訴和法院起訴。

一方面,若是被平臺(tái)投訴,建議如下:

1、通過平臺(tái)通知獲取侵權(quán)產(chǎn)品信息和投訴方具體的商標(biāo)專利權(quán)或版權(quán),分析產(chǎn)品是否真的侵權(quán);

2、若經(jīng)專業(yè)代理人或律師分析,不構(gòu)成侵權(quán),可以進(jìn)行申訴或者請(qǐng)律師介入處理;若確實(shí)侵權(quán)了,應(yīng)迅速下架侵權(quán)產(chǎn)品;

3、若店鋪被暫停銷售權(quán)。一樣可以根據(jù)平臺(tái)規(guī)則進(jìn)行申訴來恢復(fù);即使申訴不成功,還可以聯(lián)系權(quán)利人和解撤回投訴或者聘請(qǐng)律師介入代理和解談判。

另一方面,若是被法院起訴,下發(fā)了TRO凍結(jié)了賬戶資金,則建議如下:

1、通過平臺(tái)通知and/or律師郵件獲取侵權(quán)產(chǎn)品和案件信息;

2、將平臺(tái)通知or律師郵件發(fā)律師評(píng)估(是否真實(shí)侵權(quán)、是否存在不侵權(quán)抗辯是由、案件進(jìn)程、原告律師情況、和解金標(biāo)準(zhǔn)等);

3、選擇和解、應(yīng)訴 or 放棄(綜合店鋪運(yùn)營情況、店鋪凍結(jié)資金、和解或應(yīng)訴成本、與其他正常店鋪的關(guān)聯(lián)可能性等做出選擇)。

5、亞馬遜產(chǎn)品被人跟賣怎么處理

1、寫信警告對(duì)方

精心措辭的郵件能夠?yàn)槟闾峁椭?。你越留意你的listing,好處就越大。當(dāng)你發(fā)現(xiàn)listing被人跟賣后,可以向他們發(fā)送警告信。但確保語言不要過于極端。

你可以參考這封信:

這樣的警告信就足矣。

2、向亞馬遜舉報(bào)跟賣

當(dāng)你看到你的商品被跟賣時(shí),你的第一個(gè)舉動(dòng)應(yīng)該是向亞馬遜舉報(bào)違規(guī)行為。

但是,最好將其用作第二個(gè)手段。這種方法對(duì)自動(dòng)化程序極為有效,因?yàn)楫?dāng)你花點(diǎn)時(shí)間檢查其帳戶時(shí),它們很容易被識(shí)別為欺詐。

但是,這對(duì)于專業(yè)跟賣來說效果不佳,因?yàn)樗麄冏龅木褪亲尭u的listing看起來合法。

你要做的就是向賣家績效團(tuán)隊(duì)發(fā)郵件,以快速得到處理。

以下是在賣家中心內(nèi)舉報(bào)跟賣的步驟:

轉(zhuǎn)到Seller CentralHelp Contact Us

選擇:Selling on AmazonOther Issues Report a Violation。

內(nèi)容要扼要,通常在兩到三個(gè)句子之內(nèi)。你可以在電子郵件底部加上跟賣的鏈接,并將其標(biāo)記為緊急。

這種方法是為了盡早獲得結(jié)果。

3、從跟賣賣家那里購買產(chǎn)品,再舉報(bào)

這是根據(jù)亞馬遜的假冒政策向亞馬遜舉報(bào)跟賣的另一種方法。讓你的朋友購買假冒產(chǎn)品,并向亞馬遜提出A to Z投訴。

以下是詳細(xì)流程。

· 從有問題的欺詐賣家處購買產(chǎn)品,并確保選擇最快的運(yùn)輸方式。

· 拍攝照片,以便在照片中清晰可見品牌標(biāo)簽或品牌包裝,以證明該物品是假的。

· 在亞馬遜的“Report a Problem”投訴該賣家,說明該商品是假的。選擇關(guān)于產(chǎn)品的選項(xiàng)“not being materially the same”。

· 等待一天,然后對(duì)跟賣開一個(gè)假冒偽劣的case。在其中包括“fake”、“not authentic”或“counterfeit”等字眼。

· 在48小時(shí)內(nèi),亞馬遜會(huì)做出回應(yīng),如果一切順利,亞馬遜將在幾天內(nèi)撤消跟賣的listing。

網(wǎng)站標(biāo)題:亞馬遜放棄go語言 亞馬遜放棄所有prime會(huì)員
文章來源:http://bm7419.com/article12/ddegidc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站、ChatGPT、用戶體驗(yàn)、微信公眾號(hào)、手機(jī)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化